首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

vue 实现一个简单的栅格组件

vue 实现(抄袭)一个简单的栅格组件 参考iview, ant-design 的栅格组件,发现两者的基础思路是一致的。 这里通过实现一个简化版的栅格组件做总结....目标 实现24格栅格布局,包括组件 Row(行), Col(列) 组件可嵌套, 容器大小自适应 响应式布局 基本原理 栅格组件,可以看成对横向宽度的分割。...,既是根据 Col组件不同的 span 值,动态的切换对应的等分样式, 所以重点在css配置及如何切换 实现 这里基础布局会借用flex, css使用less编写,组件样式使用前缀做区分。...sizeType}-@{index}{ display: block; box-sizing: border-box; width: @index / @gird-columns....loop-flex-justify(); .loop-flex-align(); } .makeGrid(@class){ .loop-grid-columns(@gird-columns

2.2K20

flutter系列之:使用SliverList和SliverGird

简介 在上一篇文章我们讲解SliverAppBar的时候有提到过,Sliver的组件一般都用在CustomScrollView中。...我们先来看下这两个组件的定义和构造函数: class SliverList extends SliverMultiBoxAdaptorWidget { /// Creates a sliver that...也是继承自SliverMultiBoxAdaptorWidget,和SliverList一样,它也有一个SliverChildDelegate的参数,另外它还多了一个gridDelegate的参数用来控制gird...比如说这个Grid是竖向的,然后Gird的宽度是500.0,如果MaxCrossAxisExtent=100,那么delegate将会创建5个column,每个column的宽度是100。..., ), ), ], ); SliverAppBar只是一个AppBar,运行可以得到下面的界面: 我们还需要为它继续添加其他的slivers组件

79530

【Flutter】StatelessWidget 组件 ( Container 组件 | BoxDecoration 组件 | Text 组件 | Icon 组件 )

文章目录 一、StatelessWidget 组件 二、Container 组件 三、BoxDecoration 组件 四、Text 组件 五、Icon 组件 六、 相关资源 一、StatelessWidget...组件 ---- Flutter 中一切都是组件构成的 ; 其中最重要的两个组件是 ① 无状态的 StatelessWidget 组件 和 ② 有状态的 StatefulWidget 组件 ; StatelessWidget...是 Flutter 中不需要状态改变的 Widget 组件 , 其内部没有需要管理的状态 ; StatelessWidget 组件延伸出以下组件 : Container : 容器组件 ; Text :...文本组件 ; Icon : 图标组件 ; CloseButton : 关闭按钮组件 ; BackButton : 返回按钮组件 ; Chip : Divider : 分割线组件 ; Card : 卡片容器组件...; AlertDialog : 弹窗组件 ; 二、Container 组件 ---- Container 组件 : 容器组件 ; 继承 StatelessWidget , 可以通过约束其 this.child

1.7K01

flutter系列之:使用SliverList和SliverGird

简介 在上一篇文章我们讲解SliverAppBar的时候有提到过,Sliver的组件一般都用在CustomScrollView中。...我们先来看下这两个组件的定义和构造函数: class SliverList extends SliverMultiBoxAdaptorWidget { /// Creates a sliver that...也是继承自SliverMultiBoxAdaptorWidget,和SliverList一样,它也有一个SliverChildDelegate的参数,另外它还多了一个gridDelegate的参数用来控制gird...比如说这个Grid是竖向的,然后Gird的宽度是500.0,如果MaxCrossAxisExtent=100,那么delegate将会创建5个column,每个column的宽度是100。...), ), ], ); SliverAppBar只是一个AppBar,运行可以得到下面的界面: 我们还需要为它继续添加其他的slivers组件

47810

【Flutter】StatelessWidget 组件 ( CloseButton 组件 | BackButton 组件 | Chip 组件 )

文章目录 一、CloseButton 关闭按钮组件 二、BackButton 回退按钮组件 三、Chip 组件 四、 相关资源 一、CloseButton 关闭按钮组件 ---- 通常用于作为关闭界面的按钮..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:...---- Chip 组件比较复杂 , 可设置的配置较多 , 可参考其源码逐个研究每个字段的含义 ; Chip 组件源码 : 下面是 Chip 组件构造函数源码 ; class Chip extends..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:

1.2K00

Web前端学习 第2章 网页重构16 grid布局

grid布局为二维布局,同时需要兼顾行与列的布局,可以使用gird布局。 如果不考虑兼容问题,flex布局和grid布局可以很好地替代浮动布局。...grid布局基本概念 grid容器的水平区域成为行(row),垂直区域成为列(column),行与列之间的较差与是单元格(cell),划分网格的线成为网格线(gird line),了解了这些基本概念之后...二、grid容器 设置gird容器 通过下面代码可以将一个容器设置成为一个grid容器。...grid-template-columns属性与grid-template-rows属性 grid-template-columns可以设置gird容器中的项目有多少列,并指定列的宽度,实例代码如下所示...gird-template-rows属性可以设置gird容器中的项目有多少行,并指定行的宽度,实例代码如下所示: .container{ display:grid; grid-template-columns

93610

【Flutter】Flutter 布局组件 ( 布局组件简介 | Row 组件 | Column 组件 | SizedBox 组件 | ClipOval 组件 )

文章目录 一、Flutter 布局相关的组件简介 二、Row 和 Column 组件 三、SizedBox 组件 四、ClipOval 组件 五、 完整代码示例 六、 相关资源 一、Flutter 布局相关的组件简介...组件从左到右 ; Wrap : 该组件与 Row 组件类似 , Wrap 组件可以换行 ; Flow : 不常用 ; ParentDataWidget : Positioned : 用于固定组件位置的组件...; Flexible : 用于约束组件在父容器中展开大小的组件 ; 二、Row 和 Column 组件 ---- Row 组件相关参数 : Row 组件相当于线性布局 , 水平方向布局 , 组件从左到右...>[ 组件1, 组件2, 组件3, ] ) // 垂直方向排列的线性布局 Column( children: [ 组件1, 组件2,..., 即可将该组件裁剪 ; 代码示例 : 此处 ClipOval 组件对 SizedBox 组件进行圆形裁剪 , SizedBox 组件约束 Image 组件的大小 ; // 圆形裁剪组件 , 将 child

2.3K00

【Flutter】Flutter 布局组件 ( Opacity 组件 | ClipRRect 组件 | Padding 组件 )

文章目录 一、Opacity 组件 二、ClipRRect 组件 三、Padding 组件 四、完整代码示例 五、相关资源 一、Opacity 组件 ---- Opacity 组件 : 用于修改组件透明度...1.0 ; 设置调节透明度的组件 : child 字段设置要调整透明度的组件 ; // 修改透明度组件 Opacity( opacity: 透明度值, child: 要调整透明度的组件...width: 100, height: 100, ), ), 二、ClipRRect 组件 ---- ClipRRect 组件 : 裁剪方形布局的组件 ; class ClipRRect...; 设置被裁剪的组件 : child 字段设置被裁剪的组件 // 方形裁剪组件 , 将组件裁剪成方形 child: ClipRRect( // 设置裁剪圆角 borderRadius: 圆角参数...( BorderRadius 类型 ), // 被裁剪的组件 child: 被裁剪的组件 ( Widget 类型 ), ), 代码示例 : // 方形裁剪组件 , 将组件裁剪成方形 child

1.8K00

【Flutter】StatefulWidget 组件 ( 创建 StatefulWidget 组件 | MaterialApp 组件 | Scaffold 组件 )

文章目录 一、StatefulWidget 组件 二、创建 StatefulWidget 组件 三、MaterialApp 组件 四、Scaffold 组件 五、 相关资源 一、StatefulWidget...组件 ---- StatefulWidget 组件是 有状态组件 , 有如下常用的基础组件 : MaterialApp : 材料设计 APP 组件 , 通常用作页面的根节点 ; Scaffold :..., 居中放置 alignment: Alignment.center, // 子组件, 子组件设置为一个 Column 组件 child:...---- MaterialApp 组件是 材料设计 ( Material Design ) APP 组件 , 通常用作页面的根节点 ; MaterialApp 组件是 StatefulWidget 的子类..., 侧边栏组件 , 使用该组件可以很容易实现一个复杂的导航页面 ; Scaffold 组件常用设置选项 : 顶部标题栏设置 : appBar ; 界面主体子组件设置 : body ; 悬浮按钮设置 :

1.9K00

Vue基础:组件--组件组件通信

组件 组件可以扩展 HTML 元素,封装可重用的代码。在较高层面上,组件是自定义元素,Vue.js 的编译器为它添加特殊功能。在有些情况下,组件也可以是原生 HTML 元素的形式,以is特性扩展。...这意味着不能 (也不应该) 在子组件的模板内直接引用父组件的数据。要让子组件使用父组件的数据,我们需要通过子组件的 props 选项。...父组件通过props来给子组件传递数据,子组件需要显示的用props选项声明props。...可以通过v-bind动态的绑定props的值到父组件的数据中,每次当绑定的数据在父组件中发生改变的时候,该组件也会相应的传递给子组件。...prop值 prop是单向绑定的,当父组件的属性变化时,将传递给子组件,但是在子组件中改变数据的时候并不会传递给父组件(为了防止子组件无意间修改父组件的状态),所以不应该在子组件中改变prop的数据。

1.8K31
领券