vue及组件库

vue:
    1.桌面端:
        a.iview(但没有移动端版本)talkingData团队 主要适合大中型中后台产品,比如某产品的运营平台、数据监控平台、管理平台等,从工程配置、到样式布局,甚至后面规划的业务套件,是一整套的解决方案,所以它可能不太适合一些 to C 的产品,比如 QQ 空间 这类的
        (vuex):状态管理工具,类似于react中的dva
        b.element UI:饿了么团队
    2.移动端:
        a.Mint UI :饿了么团队,组件较少,样式不太丰富,也够用

        b.VUX:组件丰富,是基于WeUI和Vue(2.x)开发的移动端UI组件库,主要服务于微信页面。
            (需设置width = device-width,scale=1.0,)


iview使用总结

    1.table组件的data,column必须绑定在data对象中;render函数中若是有组件不能带引号

        ??官方文档在rc.18后废弃了render函数,那用什么代替呢???

    2.form表单:
        a.validate验证:必须将数据双向绑定,且将数据的整个对象同时:model=obj,传递给Form组件,才能实时验证;

        b.rules规则:require和type同属相同的层级,所以在同一条验证规则中,最好应分开设置多个验证规则(实测number是这种情况);而当type='date'时,require和type又不能分开写,疑问??????

    3.Modal组件:
        a.右上角的关闭按钮的回调函数必须执行,若没有则会无法打开第二次

    4.iview大打包压缩时报错:
        a.未将代码编译为es5,所以在.babelrc文件中设置: { "present":["es2015","stage-0"]}

        b.</>无法解析时:
        则可能是代码有误,比如,在request方法中引入了Message组件,只能用import{Message} from 'iview方式引入

    5.webapck打包时的文件名:
        默认name=id,若自定义名称,可在路由中require.ensure([],function,name),参数3来定义

    6.打包体积:
        a.将公用的js(vue.js,vue-router,commonFunction,tools等js)打包进vendor.js中,可明显减小每个页面的提交
    7.文件上传:
        a.vue-image-crop-upload:(pc端)vue图片剪裁上传组件
        b.vue2.0使用weui.js的uploader组件上传图片(兼容移动端)
        c.vue-upload-component:Vue.js file upload component, Support for multiple file uploads, progress, html4, ie9 Html4 does not support the progress bar, file size, accept, timeout, headers, response status code error of judgment


工程化工具(vue-cli):
    1.初始化:vue init webpack-simple my-project-name
    2.npm run dev
    // 项目流程
    3.若不引入状态工具,需使用监听事件实现全局管理:root.$emit('name',arguments),root对象有$on属性,也可以new 一个空Vue,专用于监听事件
        root.$on('name',function(arg){
            // 处理状态
            this.state1 = arg;
        })

    4.utile公共方法可挂载至vue对象的原型上Vue.prototype.method = {},在组件内通过this使用

    5.设置全局状态:loading,firstLoading等,loading可统一在request请求中进行控制,firstLoading可用于刷新页面操作(在编辑页面后,更新内容).

    6.在公共方法中如若使用iview方法,同样需要引入Vue对象,不然将报错,

猜你喜欢

转载自my.oschina.net/u/3272730/blog/1649216