使用vue-cli創(chuàng)建項(xiàng)目

使用vue-cli創(chuàng)建項(xiàng)目

標(biāo)簽(空格分隔): vueJS


說明:
vue-cli 是一個(gè)官方發(fā)布vueJS項(xiàng)目腳手架:https://github.com/vuejs/vue-cli
我創(chuàng)建的模板項(xiàng)目:https://github.com/Aleczhang1992/my-vue-project/tree/dev

測試頁1.png
測試頁2.png

一、步驟

1.要求已安裝Node.js (>=4.x, 6.x preferred) and Git.
可以設(shè)置cnpm可以提升依賴包下載速度:

npm install -g cnpm --registry=https://registry.npm.taobao.org

安裝vue-cli

sudo npm install -g vue-cli

2.創(chuàng)建模板項(xiàng)目
命令格式:vue init <template-name> <project-name>
其中template-name是可選模板項(xiàng)蔬芥,project-name是創(chuàng)建項(xiàng)目的名稱梆靖。目前提供一下幾種:

756B6384-C5F7-4708-87D4-88469DF35C0C.png

也可以使用自定義的模板,可以來自遠(yuǎn)端托管倉庫或本地笔诵。
選用webpack模板項(xiàng)目:
https://github.com/vuejs-templates/webpack

二返吻、Mint_UI框架的使用

1.完整引入
在 main.js 中寫入以下內(nèi)容:

import Vue from 'vue'
import MintUI from 'mint-ui'
import 'mint-ui/lib/style.css'
import App from './App.vue'

Vue.use(MintUI)

new Vue({
  el: '#app',
  render: h => h(App)
})

以上代碼便完成了 Mint UI 的引入。需要注意的是乎婿,樣式文件需要單獨(dú)引入测僵。
2.按需引入
安裝 babel-plugin-component:

npm install babel-plugin-component -D

將 .babelrc 修改為:

{
  "presets": [
    ["es2015", { "modules": false }]
  ],
  "plugins": [["component", [
    {
      "libraryName": "mint-ui",
      "style": true
    }
  ]]]
}

引入方式如下

import Vue from 'vue'
import { Button, Cell } from 'mint-ui'
import App from './App.vue'

Vue.component(Button.name, Button)
Vue.component(Cell.name, Cell)
/* 或?qū)憺? * Vue.use(Button)
 * Vue.use(Cell)
 */

new Vue({
  el: '#app',
  render: h => h(App)
})

創(chuàng)建項(xiàng)目過程中有一下幾個(gè)問題:

1.本地開發(fā)狀態(tài)啟動(dòng)項(xiàng)目時(shí),常會(huì)有代碼空行谢翎、分號(hào)報(bào)錯(cuò)的問題捍靠。 原因:在創(chuàng)建項(xiàng)目時(shí),選擇了使用eslint語法校驗(yàn)森逮。
2.引入樣式報(bào)錯(cuò)問題榨婆,babel無法編譯css文件。

Module not found: Error: Cannot resolve module 'mint-ui/style.css'

原因:全局引入需要引入樣式褒侧,如果在.babelrc中設(shè)置過按需引入良风,則不要再專門引入css.

3052C968-9B77-49F8-9F93-8022C9C1C927.png

3.另外引入的組件要在自定義組件中注冊(cè),組件中嵌套的組件也要進(jìn)行引用和注冊(cè)。
4.非渲染dom組件無需寫在模板內(nèi)闷供,也無需注冊(cè)烟央,可以直接調(diào)用使用。比如load的Indicator

E3B62FFC-70C9-4B60-A1C4-676D24AD88D6.png

三歪脏、vue-router的使用

github地址:https://github.com/vuejs/vue-router
在入口文件main.js中引入

import VueRouter from 'vue-router';
Vue.use(VueRouter);
//然后實(shí)例化一個(gè)router
const router = new VueRouter({
mode: 'history',
routes: routes
});

rotues是自己分配的路由設(shè)置吊档;

四、使用vuex進(jìn)行狀態(tài)管理

vue的狀態(tài)管理工具 vuex
下面簡單介紹下vuex各個(gè)部分的概念

  • state是一個(gè)全局的狀態(tài)存儲(chǔ)唾糯,數(shù)據(jù)會(huì)存儲(chǔ)在其中怠硼,vue組件可以直接訪問其中的值鬼贱,但是只可以讀,不可以進(jìn)行寫操作

  • getter,有些時(shí)候我們需要對(duì)獲取的數(shù)據(jù)進(jìn)行加工香璃,而不是直接獲取state中的數(shù)據(jù)这难,這時(shí)候可以通過getter定義函數(shù),返回對(duì)應(yīng)的數(shù)據(jù)

  • mutations是vuex中唯一一個(gè)可以修改數(shù)據(jù)的地方葡秒,mutations可以定義事件函數(shù)姻乓,在vue組件中可以通過commit發(fā)射事件,調(diào)用函數(shù)眯牧。需要注意的是蹋岩,mutations中的操作必須是同步的,不可以存在異步操作的情況学少。

  • actions和 mutation比較相似剪个,不同的是actions中不直接修改state,而是通過commit調(diào)用mutations修改數(shù)據(jù)版确,而且actions中可以存在異步處理邏輯

使用vuex需要在Vue.use中引入扣囊,然后實(shí)例化一個(gè)Vuex.Store對(duì)象就可以了,對(duì)象中需要定義state,actions,mutations,getters等內(nèi)容,這樣子就可以建立一個(gè)全局的狀態(tài)管理機(jī)制绒疗,可以從應(yīng)用的頂端去處理數(shù)據(jù)侵歇,各個(gè)組件中對(duì)數(shù)據(jù)進(jìn)行操作也是通過事件直接傳遞到Vuex中進(jìn)行數(shù)據(jù)更新,然后再進(jìn)行響應(yīng)到其他使用同個(gè)數(shù)據(jù)的組件中吓蘑,進(jìn)行視圖更新惕虑。

圖片.png
圖片.png
圖片.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市磨镶,隨后出現(xiàn)的幾起案子枷遂,更是在濱河造成了極大的恐慌,老刑警劉巖棋嘲,帶你破解...
    沈念sama閱讀 206,311評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件酒唉,死亡現(xiàn)場離奇詭異,居然都是意外死亡沸移,警方通過查閱死者的電腦和手機(jī)痪伦,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,339評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來雹锣,“玉大人网沾,你說我怎么就攤上這事∪锞簦” “怎么了辉哥?”我有些...
    開封第一講書人閱讀 152,671評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我醋旦,道長恒水,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,252評(píng)論 1 279
  • 正文 為了忘掉前任饲齐,我火速辦了婚禮钉凌,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘捂人。我一直安慰自己御雕,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,253評(píng)論 5 371
  • 文/花漫 我一把揭開白布滥搭。 她就那樣靜靜地躺著酸纲,像睡著了一般。 火紅的嫁衣襯著肌膚如雪瑟匆。 梳的紋絲不亂的頭發(fā)上闽坡,一...
    開封第一講書人閱讀 49,031評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音脓诡,去河邊找鬼。 笑死媒役,一個(gè)胖子當(dāng)著我的面吹牛祝谚,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播酣衷,決...
    沈念sama閱讀 38,340評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼交惯,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了穿仪?” 一聲冷哼從身側(cè)響起席爽,我...
    開封第一講書人閱讀 36,973評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎啊片,沒想到半個(gè)月后只锻,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,466評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡紫谷,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,937評(píng)論 2 323
  • 正文 我和宋清朗相戀三年齐饮,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片笤昨。...
    茶點(diǎn)故事閱讀 38,039評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡祖驱,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出瞒窒,到底是詐尸還是另有隱情捺僻,我是刑警寧澤,帶...
    沈念sama閱讀 33,701評(píng)論 4 323
  • 正文 年R本政府宣布,位于F島的核電站匕坯,受9級(jí)特大地震影響束昵,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜醒颖,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,254評(píng)論 3 307
  • 文/蒙蒙 一妻怎、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧泞歉,春花似錦逼侦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,259評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至挺庞,卻和暖如春晰赞,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背选侨。 一陣腳步聲響...
    開封第一講書人閱讀 31,485評(píng)論 1 262
  • 我被黑心中介騙來泰國打工掖鱼, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人援制。 一個(gè)月前我還...
    沈念sama閱讀 45,497評(píng)論 2 354
  • 正文 我出身青樓戏挡,卻偏偏與公主長得像,于是被迫代替她去往敵國和親晨仑。 傳聞我的和親對(duì)象是個(gè)殘疾皇子褐墅,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,786評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容