Vue做爲前端三大框架之一,其已經悄然成爲主流,學會用vue相關技術來開發項目會至關輕鬆。css
對於還沒學習或者還沒用過vue的初學者,基礎知識這裏不做詳解,推薦先去相關官網,學習一下vue相關的基礎知識。html
a. vue.js 官網 參考:https://cn.vuejs.org/前端
b. Vue Router 官網 參考:https://router.vuejs.org/zh/[](https://router.vuejs.org/zh/) vue
c. Vuex 官網 參考:https://vuex.vuejs.org/zh/[](https://vuex.vuejs.org/zh/)node
d. ECMAScript 6 入門 參考:http://es6.ruanyifeng.com/ react
或者 es6 精簡篇 https://www.jianshu.com/p/287e0bb867aewebpack
e. webpack 官網 參考:https://www.webpackjs.com/nginx
f. less 官網 參考:https://less.bootcss.com/[](https://less.bootcss.com/)git
g. mint-ui 官網 參考: http://mint-ui.github.io/#!/zh-cnes6
首先,要開發vue相關的項目,要會搭建vue的相關環境,要搭建的目錄以下:
1.安裝node.js和npm
2. webpack
3. vue-cli腳手架構建工具
具體這裏不做詳解,站在前人的肩膀上學習便可
安裝node.js和npm
webpack和vue-cli腳手架構建工具
利用腳手架(vue-cli)構建一個vue項目,接下來學習分析下代碼。
具體這裏不做詳解,站在前人的肩膀上學習便可
教程參考: https://www.jianshu.com/p/2b661d01eaf8
由於項目配置和須要的模塊都已經配好了的,因此運行只須要:
1.在svn上把 mobile-h5 項目代碼下載下來。
2.直接進入mobile-h5目錄中,便是和 package.json 的文件同級目錄,或者直接用vsCode編輯器打開 mobile-h5 項目,在命令終端那裏。
npm install
或者簡寫:
npm i
沒有報錯時,安裝結果如圖:
安裝報錯時,會出現 error 的,或者直接停止了,window系統通常是由於npm 的環境沒有配置好。
npm run dev
沒有報錯時,結果會以下圖:
都寫在 README.md 裏面了,具體的也可查看 README.md 的內容。
#目錄結構 ├── mobile-h5 # 總項目目錄 ├── build # webpack 配置文件目錄 ├── config # webpack 配置文件引用的目錄 ├── kpi # webpack 打包正式生成的目錄 ├── src # 主開發文件的目錄 │ ├── assets # 圖片資源 │ ├── components # 組件模塊 | │ ├── app # 組件模塊 | | | ├── add # 本項目指標新增的組件的模塊 | | | ├── common # 組件通用的模塊 | | | ├── index # 本項目首頁組件通用的模塊 | | | ├── index # 本項目套餐組件通用的模塊 │ ├── filters # 過濾器模塊 │ ├── filters # 過濾器模塊 │ ├── less # less 的公共樣式模塊 │ ├── libs # 封裝的公共 js 文件模塊 │ ├── mixins # mixins 文件模塊 │ ├── router # 路由模塊 │ ├── store # vuex 的 store 模塊 │ ├── views # 主開發的 vue 模塊 │ ├── ├── static # webpack 打包依賴的目錄 ├── index.html # 主頁面入口,也是生成打包生產環境代碼要依賴的文件
提示:要在手機上開發測試,npm run dev 運行的localhost是不行的,要配置nginx來作代理服務才行。
好比:
components/common是全局公共的組件,
components/app 是mobile-h5的開發組件
components/app/add mobile-h5的指標新增的組件
components/app/index 是mobile-h5的首頁的組件
components/app/setMeal 是mobile-h5的套餐的組件
mixins/add 是mobile-h5的指標新增的 mixins
mixins/common 是mobile-h5的公共的 mixins
modules/add 是mobile-h5的指標新增的狀態數據保存
modules/setMeal 是mobile-h5的套餐的狀態數據保存
domain.js 是域名的配置, 只要統一配置一項便可,方便。
好比: 添加收藏 https://baidu.com:8443/emm/favorite/save
由於引入了 domain.js 了
因此咱們只須要在urls.js裏面寫: save(即別名): 'emm/favorite/save' 便可
只要打開 總開關,再打開你要用mock數據的 具體接口的開關,接口就不會請求後臺的接口了,只用mock返回的數據。
用法:
好比上圖的,全省的寬 280px ,高 58px , 正常開發下,程序的css上須要寫
{ width: 280px; height: 58px; }
可是咱們只須要:
{ width: 280 / 100 rem; height: 58 / 100 rem; }
也便是:
{ width: 2.8rem; height: 0.58rem; }
並且不管手機大小是多少,由於設計了 config_width = 750 ,因此滿寬都是 7.5rem。
字體大小等也同理。
注意: 由於 phone的分辨率高,因此 0.01rem 在 iphone真機上會不顯示,在 border設置的時候猶爲明顯,至少要0.02rem 才行。
// 屏幕適配(windowWidth/設計稿寬*100) ——*100爲了方便計算。即font-size值是手機deviceWidth與設計稿比值的100倍 document.getElementsByTagName('html')[0].style.fontSize=window.screen.width/7.5+'px'; // 如上:經過查詢屏幕寬度,動態的設置html的font-size值,設計稿大多以750*1334 設置的,經過上述換算後,在設計圖上一張150*150的圖,在css中對應的rem值則爲:1.5*1.5rem
libs裏的文件內容都是 內有乾坤的,開發人員都有必要了解一下,這裏就很少介紹了。
vue和react同樣,能夠組件化,因此推薦組件化開發的方式。
組件系統是 Vue 的一個重要概念,容許咱們使用小型、獨立和一般可複用的組件構建大型應用。
參考vue官網,組件化 :https://cn.vuejs.org/v2/guide/components.html
項目舉例:好比一個h5的首頁,能夠分爲標題組件,業務實時組件,關鍵指標組件,tab切換組件。這幾個組件的幾乎沒有聯繫,能夠相互獨立。
固然你也能夠再劃分紅小組件,相同的模塊抽成公共的小組件,這樣子達到代碼重用的目的更好。好比首頁裏面大模塊的 title 。
本項目vuex的用法 和官方的有點不同,因此這裏有必要作一下講解。
好比:新增裏面要存儲關於 日 月 類型的切換:tabActiveType: '',
要先在store模塊的add裏面的initPageState 先定義,否則找不到,爲取值會爲undefined。
按照這5步,一個關於vuex的取值與偘保存值就ok了!
這樣子能夠獲取異步請求數據,並保存在store裏面了。
結合團隊平常業務需求以及團隊在平常開發過程當中總結提煉出的經驗而制定。
旨在加強團隊開發協做、提升代碼質量和打造開發基石的編碼規範,
如下規範是團隊基本約定的內容,必須嚴格遵循。
規範連接:
參考 騰訊和京東的前端代碼規範
騰訊的 http://tgideas.qq.com/doc/index.html
京東的 https://guide.aotu.io/index.html
Visual Studio Code 是微軟推出的跨平臺編輯器。它採用經典的VS的UI佈局,功能強大,擴展性很強。
這個編輯器流暢簡潔,自從用了這個編輯器,其餘的都不想了,只想靜靜地敲代碼了。
Microsoft Visual Studio Code 中文手冊 https://jeasonstudio.gitbooks.io/vscode-cn-doc/content/
並且這個插件配置一下更好用:
`
"vetur.format.defaultFormatter.js": "vscode-typescript",
`
否則有些地方會出現換行,代碼難懂了。像下面這樣:
用上以後不滿意 ?哼,那本汪就不高興了,本汪不負責!
送上參加過的一次前端交流會上關於vue的學習和實踐的pdf文件。要下載才能看哦!!!
vue項目開發實踐 [vue-practice.pdf] 和 vue入坑記 [vue-starter.pdf] https://github.com/biaochenxuying/learning-resource/tree/master/vue
最後:
裝逼完畢!多謝!!!本汪又該去寫bugger了!!!
若是你以爲該文章對你有幫助,歡迎到個人 github,star 一下,謝謝。
你覺得本文就這麼結束了 ? 精彩在後面 !!!