1.首先上场的是陪伴了我们N多多多年的jq大哥,他是原生js的封装,帮助我们快速操作Dom,vue和react则是颠覆了操作dom的思想,通过数据的双向绑定更改数据;
2.jq更偏向于js操作样式,而vue和react这是进行数据操作较多一些;
3.在我们的项目中选用了vue,因为公司前端人员都会vue,不再需要学习成本,并且vue适合各种大小的项目,react更偏向于大型的项目;
4.在搭建后台管理系统上,大家都明白的基本上是不需要太多ui图的,我们采用了ui库(iview),这个iview是跟element对比后,做出的选择,因为iview的功能更全,组件ui样式更多一些;
5.项目的搭建没有采用vue-cli,我认为vue-cli是为了模块化,现在我们使用了iview这个ui组件库,就没有必要封装自己的组件了。所以我们采用了多页面的vue;
6.项目在css上选择less,后期的打包还是使用webpack的,后期会出一篇文章讲解webpack的多页面打包。
总结:如果我的方向哪里有错误的地方,还希望多多指教。
产品最近提了一个 需要三级选择器 才能实现的需求,看了iView和Element-UI,没有找到合适的组件,然后做了一个基于iView的TreeSelect 组件。
github地址: https://github.com/FFFFF1/vue-super-tree-select
install 安装
npm install vue-super-tree-select --save
Usage 示例
该组件是基于iView的,请事先use iView 与其CSS;
如果出现下拉框 被其他组件遮盖时,请自行修改.content-box 的z-index值(默认为100);
import superTreeSelect from 'vue-super-tree-select'
export default {
components: {superTreeSelect},
data () {
return {
model_: [
{ title: '豆浆' },
{ title: '油条' }
],
data_: [
{
title: '早餐',
children: [
{
title: '北方',
children: [
{title: '豆浆'},
{title: '油条'}
]
},
{
title: '南方',
children: [
{title: '肠粉'},
{title: '虾饺'}
]
}
]
}
]
}
}
}
config 配置项
属性说明类型默认值
pkey设置每一个节点的唯一标识Stringtitle
v-model存放组件中选择的最底层节点信息,每个节点信息会自动加上一个value属性,记录其所有父节点的pkey值类似于:'id1/id2/id3'Array/
data组件中所有的选择项,格式请参照示例Array/
searchable是否可搜索,设置该属性为true时,可以根据子节点的title进行搜索Booleanfalse
clearable是否可清空Booleanfalse
width设置组件的宽度String300