VUE.JS——腳手架安裝
阿新 • • 發佈:2019-01-05
使用 Vue.js 開發大型應用時,我們需要考慮程式碼目錄結構、專案構建和部署、熱載入、程式碼單元測試等事情。如果每個專案都要手動完成這些工作,那無疑效率是低下的,所以通常我們會使用一些腳手架工具來幫助完成這些事情。在 Vue.js 生態中我們可以使用 vue-cli 腳手架工具來快速構建專案。
(1) 安裝之前需要檢查是否已經安裝NodeJS的環境
可以使用node -v檢查,且需要保證安裝4.0版本以上的nodejs環境
執行命令node -v 安裝的版本為 v6.9.4
如果沒有安裝則執行下面的步驟:node.js安裝過程如下:- 下載得到壓縮檔案node-v6.9.4-c64.msi
- 雙擊進行安裝
- 檢視安裝目錄
可以發現node.js自帶了npm,我們可以直接使用npm安裝其他的相關環境即可。 安裝命令為 : npm install 元件名稱 預設情況下,元件都是安裝在C:\Program Files\nodejs\node_modules資料夾下的 但是通常情況下,我們需要安裝一個全域性的元件,才能夠使用 這時安裝命令為:npm install 元件名稱 -g
- node.js就安裝完成
(2)安裝vue-cli
vue-cli 是用 node 編寫的命令列工具,我們需要進行全域性安裝。開啟命令列工具,輸入指令:$ npm install -g vue-cli
也可以安裝一個npm的淘寶映象,這樣安裝快一些
安裝命令如下:
安裝完成以後,執行如下命令:$ vue --version
得到安裝的vue版本是2.8.1
(3)基本使用
初始化專案 定位到建立專案的目錄下 執行命令:vue init 模板型別 專案名稱 模板型別可以使用vue list指令檢視 專案名稱可以自己定義vue生成專案模板的命令格式為
$ vue init <template-name> <project-name>
<template-name>:模板名,比如 webpack, simple, browserify
<project-name>: 本地資料夾名稱
我們可以使用 vue-cli 來快速生成一個基於 Webpack 構建的專案。開啟命令列工具,輸入如下命令:
$ vue init webpack my-project
所有模板預設安裝的是 Vue 2.x 版本,如果需要安裝 1.x 版本,需要輸入如下指令:$ vue init webpack#1.0 my-project
有一系列互動問題,同意按 y,不同意按 n。
初始化專案之後,檢視專案目錄如下:
安裝命令列給出的提示,我們依次輸入如下指令:
$ cd my-project$ npm install
安裝過程如下:
安裝完畢以後會在對應的目錄下生成如下檔案,多了一個node-module檔案,裡面是依賴的node工具包:
下面對上圖目錄做一個簡要的說明現在啟動專案,輸入如下命令:
$ npm run dev
預設監聽的是 8080 埠
甚至連 Apche伺服器都不需要自己啟動,在瀏覽器中輸入 http://localhost:8080,生成的頁面如下:
<script>
export default {
data () {
return {
// note: changing this line won‘t causes changes
// with hot-reload because the reloaded component
// preserves its current state and we are modifying
// its initial state.
msg: ‘你好,世界!‘
}
}
}
</script>
重新重新整理頁面:
(4)模板
這裡對兩個命令做進一步拓展介紹:4-1、init
init 命令用來基於指定模板生成專案結構。前面提到過的,template-name 為模板名,project-name 為要生成的目錄名
4-2、list
list 命令用於列出所有可用的模板,通過查詢 https://api.github.com/users/vuejs-templates/repos 這個API 介面可以得到所有列表。
命令列輸入指令:
$ vue list
前面提到,在執行 init 命令時可以指定模板的名字。在預設情況下,vue-cli 會根據所傳入的模板名字去 github 中查詢模板。
vue-cli 的模板分為 官方模板、自定義模板、本地模板
(1)、官方模板
上圖中就提供了 5種 官方模板:
browserify -- 擁有高階功能的 Browserify + vueify 用於 正式開發
browserify-simple -- 擁有基礎功能的 Browserify + vueify 用於 快速開發
simple -- 單個 HTML,用於開發最簡單的 Vue.js 應用
webpack -- 擁有高階功能的 Webpack + vue-loader 用於正式開發
webpack-simple -- 擁有基礎功能的 Webpack + vue-loader 用於快速開發
在這裡特別提一下 webpack,前面在安裝 webpack 模板時,有一個選擇項,是否使用 ESLint 來規範你的程式碼
ESLint 對於平時不太注意程式碼縮排的朋友可能是一個噩耗,我們簡單演示一下,開啟 src 下的 App.vue,把程式碼稍作修改
<template>
<div id="app">
<h2>2017年來啦!</h2>
<strong>{{msg}}</strong>
</div>
</template>
<script>
export default {
data(){
return {
msg:‘好好學習 Vue.js!‘
}
}
}
</script>
重新整理頁面,提示了各種程式碼縮排、空格 之類的錯誤
(2)、自定義模板
當官方模板不能滿足需求時,我們可以 fork 官方模板按照自己的需求修改後,通過 vue-cli 命令生成基於自己模板的專案結構:
$ vue init username/repo my-project
(3)、本地模板
除了從 github 下載模板外,我們還可以從本地載入模板:
$ vue init ~/fs/path/to-custom-template my-project
5、推薦的工具包
vue-cli 內部使用了很多第三方 npm 包來幫助自己實現一些基礎功能,比如下面這些5-1、commander
commander 是一個命令列介面的解決方案,它提供了一些介面方便我們對命令列的命令做解析。
倉庫地址:https://github.com/tj/commander.js
5-2、download-git-repo
download-git-repo 用來將相應的 git 庫(Github、GitLab、Bitbucket)下載到指定的本地資料夾。倉庫地址:https://github.com/flipxfx/download-git-repo
5-3、inquirer
inquirer 是一個常見的互動式命令列使用者頁面的集合,它可以簡化以下流程:
提供錯誤反饋
詢問問題
解析輸入
驗證結果
倉庫地址: https://github.com/SBoudrias/Inquirer.js
原文:http://dapengtalk.blog.51cto.com/11549574/1879088