vue:
1.桌面端:
a.iview(但沒有移動端版本)talkingData團隊 主要適合大中型中後臺產品,好比某產品的運營平臺、數據監控平臺、管理平臺等,從工程配置、到樣式佈局,甚至後面規劃的業務套件,是一整套的解決方案,因此它可能不太適合一些 to C 的產品,好比 QQ 空間 這類的
(vuex):狀態管理工具,相似於react中的dva
b.element UI:餓了麼團隊
2.移動端:
a.Mint UI :餓了麼團隊,組件較少,樣式不太豐富,也夠用html
b.VUX:組件豐富,是基於WeUI和Vue(2.x)開發的移動端UI組件庫,主要服務於微信頁面。
(需設置width = device-width,scale=1.0,)vue
iview使用總結react
1.table組件的data,column必須綁定在data對象中;render函數中如果有組件不能帶引號webpack
??官方文檔在rc.18後廢棄了render函數,那用什麼代替呢???web
2.form表單:
a.validate驗證:必須將數據雙向綁定,且將數據的整個對象同時:model=obj,傳遞給Form組件,才能實時驗證;vue-router
b.rules規則:require和type同屬相同的層級,因此在同一條驗證規則中,最好應分開設置多個驗證規則(實測number是這種狀況);而當type='date'時,require和type又不能分開寫,疑問??????vuex
3.Modal組件:
a.右上角的關閉按鈕的回調函數必須執行,若沒有則會沒法打開第二次vue-cli
4.iview大打包壓縮時報錯:
a.未將代碼編譯爲es5,因此在.babelrc文件中設置: { "present":["es2015","stage-0"]}npm
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對象,否則將報錯,