今年開搞了,搭建一下vue開發環境


  更新文檔,具體做出來的項目已經整理的相關的教程, 我直接貼過來吧.

Node.js 安裝

Node.js 安裝包及源碼下載地址為:https://nodejs.org/en/download/。 你可以根據不同平台系統選擇你需要的 Node.js 安裝包。

Windows 上安裝 Node.js

Windows 安裝包(.msi)

32 位安裝包下載地址 : https://nodejs.org/dist/v4.4.3/node-v4.4.3-x86.msi 64 位安裝包下載地址 : https://nodejs.org/dist/v4.4.3/node-v4.4.3-x64.msi

本文實例以 v0.10.26 版本為例做演示,其他版本類似(根據實際項目情況選擇版本安裝), 安裝步驟: 步驟 1 : 雙擊下載后的安裝包 v0.10.26 步驟 2 : 點擊以上的Run(運行),點擊 next(下一步) 按鈕 步驟 3 : 勾選接受協議選項,點擊 next(下一步) 按鈕 步驟 4 : Node.js默認安裝目錄為 "C:\Program Files\nodejs" , 你可以修改目錄,並點擊 next(下一步) 步驟 5 : 點擊樹形圖標來選擇你需要的安裝模式 , 然后點擊下一步 next(下一步) 步驟 6 :點擊 Install(安裝) 開始安裝Node.js。你也可以點擊 Back(返回)來修改先前的配置。 然后並點擊 next(下一步)

檢測PATH環境變量是否配置了Node.js,點擊開始=》運行=》輸入"cmd" => 輸入命令"path",輸出如下結果: PATH=C:\oraclexe\app\oracle\product\10.2.0\server\bin;C:\Windows\system32; C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0; c:\python32\python;C:\MinGW\bin;C:\Program Files\GTK2-Runtime\lib; C:\Program Files\MySQL\MySQL Server 5.5\bin;C:\Program Files\nodejs; C:\Users\rg\AppData\Roaming\npm

我們可以看到環境變量中已經包含了C:\Program Files\nodejs\

檢查Node.js版本,命令:node -v

Linux 上安裝 Node.js

直接使用已編譯好的包 Node 官網已經把 linux 下載版本更改為已編譯好的版本了,我們可以直接下載解壓后使用:

wget https://nodejs.org/dist/v10.9.0/node-v10.9.0-linux-x64.tar.xz // 下載

tar xf node-v10.9.0-linux-x64.tar.xz // 解壓

cd node-v10.9.0-linux-x64/ // 進入解壓目錄

./bin/node -v // 執行node命令 查看版本

v10.9.0

解壓文件的 bin 目錄底下包含了 node、npm 等命令,我們可以使用 ln 命令來設置軟連接: ln -s /usr/software/nodejs/bin/npm /usr/local/bin/ ln -s /usr/software/nodejs/bin/node /usr/local/bin/

Ubuntu 源碼安裝 Node.js

以下部分我們將介紹在 Ubuntu Linux 下使用源碼安裝 Node.js 。 其他的 Linux 系統,如 Centos 等類似如下安裝步驟。

在 Github 上獲取 Node.js 源碼:

$ sudo git clone https://github.com/nodejs/node.git Cloning into 'node'... 修改目錄權限:

$ sudo chmod -R 755 node 使用 ./configure 創建編譯文件,並按照:

$ cd node $ sudo ./configure $ sudo make $ sudo make install 查看 node 版本:

$ node --version v0.10.25

Ubuntu apt-get命令安裝

命令格式如下:

sudo apt-get install nodejs sudo apt-get install npm CentOS 下源碼安裝 Node.js 1、下載源碼,你需要在https://nodejs.org/en/download/下載最新的Nodejs版本,本文以v0.10.24為例:

cd /usr/local/src/ wget http://nodejs.org/dist/v0.10.24/node-v0.10.24.tar.gz 2、解壓源碼

tar zxvf node-v0.10.24.tar.gz 3、 編譯安裝

cd node-v0.10.24 ./configure --prefix=/usr/local/node/0.10.24 make make install 4、 配置NODE_HOME,進入profile編輯環境變量

vim /etc/profile 設置 nodejs 環境變量,在 export PATH USER LOGNAME MAIL HOSTNAME HISTSIZE HISTCONTROL 一行的上面添加如下內容:

set for nodejs

export NODE_HOME=/usr/local/node/0.10.24 export PATH=$NODE_HOME/bin:$PATH :wq保存並退出,編譯/etc/profile 使配置生效

source /etc/profile 驗證是否安裝配置成功

node -v 輸出 v0.10.24 表示配置成功

npm模塊安裝路徑

/usr/local/node/0.10.24/lib/node_modules/ 注:Nodejs 官網提供了編譯好的 Linux 二進制包,你也可以下載下來直接應用。

Vue.js 安裝

NPM 方法 大家都知道國內直接使用 npm 的官方鏡像是非常慢的,這里推薦使用淘寶 NPM 鏡像。

淘寶 NPM 鏡像是一個完整 npmjs.org 鏡像,你可以用此代替官方版本(只讀),同步頻率目前為 10分鍾 一次以保證盡量與官方服務同步。

你可以使用淘寶定制的 cnpm (gzip 壓縮支持) 命令行工具代替默認的 npm:

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

在用 Vue.js 構建大型應用時推薦使用 NPM 安裝:

最新穩定版

$ npm install vue

命令行工具 Vue.js 提供一個官方命令行工具,可用於快速搭建大型單頁應用。

全局安裝 vue-cli

$ npm install --global vue-cli

創建一個基於 webpack 模板的新項目

$ vue init webpack my-project

這里需要進行一些配置,默認回車即可

This will install Vue 2.x version of the template.

For Vue 1.x use: vue init webpack#1.0 my-project

? Project name my-project ? Project description A Vue.js project ? Author runoob ? Vue build standalone ? Use ESLint to lint your code? Yes ? Pick an ESLint preset Standard ? Setup unit tests with Karma + Mocha? Yes ? Setup e2e tests with Nightwatch? Yes

vue-cli · Generated "my-project".

To get started:

 cd my-project
 npm install
 npm run dev

Documentation can be found at https://vuejs-templates.github.io/webpack

進入項目,安裝並運行: $ cd my-project $ cnpm install $ cnpm run dev DONE Compiled successfully in 4388ms

Listening at http://localhost:8080

4、可視化管理之(vue ui) vue-cli 3.0 版本為我們提供了集 創建、管理、分析 為一體的可視化界面vue ui:

安裝最新版的vue-cli

npm install -g @vue/cli

檢查vue-cli版本

vue -V

運行 vue ui

vue ui


Vue CLI 3 項目構建基礎配置

查看 node 版本

node -v

查看 npm 版本

npm -v

腳手架vue-cli

安裝 Vue CLI 3.x

npm i -g @vue/cli 安裝完 vue-cli 后,我們在你想要創建的項目目錄地址下執行構建命令

my-project 是你的項目名稱

vue create my-project

可視化界面

除了使用上述命令行構建外, vue-cli 3.x 還提供了可視化的操作界面,在項目目錄下我們運行如下命令開啟圖形化界面: Image text Image text

webpack 在 CLI 3 中的應用

3.1 與 vue-cli 2.x 的差異 如果你使用過 vue-cli 2.x ,那么你應該了解其構建出的目錄會包含相應的 webpack 配置文件,但是在 vue-cli 3.x 中你卻見不到一份關於 webpack 的配置文件,難道 3.x 拋棄了 webpack?其實不然, 3.x 提供了一種開箱即用的模式,即你無需配置 webpack 就可以運行項目,並且它提供了一個 vue.config.js 文件來滿足開發者對其封裝的 webpack 默認配置的修改

 

vue.config.js 的配置 a. baseurl 你想要將項目地址加一個二級目錄,比如: http://localhost:8080/vue/ ,那么我們需要在 vue.config.js 里配置 baseurl 這一項

// vue.config.js module.exports = { ...

baseUrl: 'vue',

...

} 其改變的其實是 webpack 配置文件中 output 的 publicPath 項,這時候你重啟終端再次打開頁面的時候我們首頁的 url 就會變成帶二級目錄的形式。

b. outputDir 如果你想將構建好的文件打包輸出到 output 文件夾下(默認是 dist 文件夾),你可以配置

// vue.config.js module.exports = { ...

outputDir: 'output',

...

} 然后運行命令 yarn build 進行打包輸出,你會發現項目跟目錄會創建 output 文件夾, 這其實改變了 webpack 配置中 output 下的 path 項,修改了文件的輸出路徑

c. productionSourceMap 該配置項用於設置是否為生產環境構建生成 source map ,一般在生產環境下為了快速定位錯誤信息,我們都會開啟 source map :

// vue.config.js module.exports = { ...

productionSourceMap: true,

...

} 該配置會修改 webpack 中 devtool 項的值為 source-map

d. chainWebpack chainWebpack 配置項允許我們更細粒度的控制 webpack 的內部配置,其集成的是 webpack-chain 這一插件,該插件可以讓我們能夠使用鏈式操作來修改配置,比如

// 用於做相應的合並處理 const merge = require('webpack-merge');

module.exports = { ...

// config 參數為已經解析好的 webpack 配置
chainWebpack: config => {
    config.module
        .rule('images')
        .use('url-loader')
        .tap(options =>
            merge(options, {
              limit: 5120,
            })
        )
}

...

} 以上操作我們可以成功修改 webpack 中 module 項里配置 rules 規則為圖片下的 url-loader 值,將其 limit 限制改為 5M,修改后的 webpack 配置代碼如下:

{ ...

module: {
    rules: [
        {   
            /* config.module.rule('images') */
            test: /\.(png|jpe?g|gif|webp)(\?.*)?$/,
            use: [
                /* config.module.rule('images').use('url-loader') */
                {
                    loader: 'url-loader',
                    options: {
                        limit: 5120,
                        name: 'img/[name].[hash:8].[ext]'
                    }
                }
            ]
        }
    ]
}

...

} e. configureWebpack 除了上述使用 chainWebpack 來改變 webpack 內部配置外,我們還可以使用 configureWebpack 來進行修改,兩者的不同點在於 chainWebpack 是鏈式修改,而 configureWebpack 更傾向於整體替換和修改。示例代碼如下

// vue.config.js module.exports = { ...

// config 參數為已經解析好的 webpack 配置
configureWebpack: config => {
    // config.plugins = []; // 這樣會直接將 plugins 置空
    
    // 使用 return 一個對象會通過 webpack-merge 進行合並,plugins 不會置空
    return {
        plugins: []
    }
}

...

} configureWebpack 可以直接是一個對象,也可以是一個函數,如果是對象它會直接使用 webpack-merge 對其進行合並處理,如果是函數,你可以直接使用其 config 參數來修改 webpack 中的配置,或者返回一個對象來進行 merge 處理

你可以在項目目錄下運行 vue inspect 來查看你修改后的 webpack 完整配置,當然你也可以縮小審查范圍,比如

只查看 plugins 的內容

vue inspect plugins f. devServer vue.config.js 還提供了 devServer 項用於配置 webpack-dev-server 的行為,使得我們可以對本地 服務器 進行相應配置,我們在命令行中運行的 npm serve 對應的命令 vue-cli-service serve 其實便是基於 webpack-dev-server 開啟的一個本地服務器,其常用配置參數如下

// vue.config.js module.exports = { ...

devServer: {
    open: true, // 是否自動打開瀏覽器頁面
    host: '0.0.0.0', // 指定使用一個 host。默認是 localhost
    port: 8080, // 端口地址
    https: false, // 使用https提供服務
    proxy: null, // string | Object 代理設置
    
    // 提供在服務器內部的其他中間件之前執行自定義中間件的能力
    before: app => {
      // `app` 是一個 express 實例
    }
}

...

}

快速配置多環境變量

vue-cli3 搭建的項目其實看起來比 cli2 簡單明了很多,官方也有相關文檔對多環境變量配置的描述。https://cli.vuejs.org/zh/guide/mode-and-env.html

1.首先: 通過為 .env 文件增加后綴來設置某個模式下特有的環境變量 通過傳遞 --mode 選項參數為命令行覆寫默認的模式

在項目的根目錄新建3個文件夾,分別對應開發(dev),測試(test),生產(prod) 文件命名: .env.dev , .env.test , .env.prod

Image text

接下來是不同文件里面的代碼情況,

.env.dev

NODE_ENV = 'development' VUE_APP_CURRENTMODE = 'dev' VUE_APP_BASEURL = '本地開發api地址'


.env.test

NODE_ENV = 'production' VUE_APP_CURRENTMODE = 'test' VUE_APP_BASEURL = '測試環境api地址'


.env.prod

1.NODE_ENV = 'production' VUE_APP_CURRENTMODE = 'prod' VUE_APP_BASEURL = '正式環境api地址'

2.修改package.json 腳本:

3.最后總結: npm run dev //本地運行 npm run build:test //測試環境打包 npm run build:pro //正式環境打包

 

一段時間 果不其然又開始搞了,遇到的問題自己記錄一下

1. ERR! errno 126 解決辦法

rm -rf node_modules
rm package-lock.json
npm cache clear --force
npm insta

2. Unexpected end of JSON input while parsing near '…"報錯解決方法,加載依賴包加載不了。或者加載速度太慢,依次運行這三個命令

(1)npm install --registry=https://registry.npm.taobao.org --loglevel=silly
(2)npm cache clean --force
(3)npm install

3. 報錯內容:

Error - [sass] Error: Missing binding C:\Users\chuanbiao.liu\helloworld-webpart\node_modules\node-sass\vendor\win32-x64-57\binding.node
Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 8.x

Found bindings for the following environments:
  - Windows 64-bit with Node.js 8.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass --force` to build the binding for your current environment.
[16:48:42] Error - 'sass' sub task errored after 1.53 s
 Missing binding C:\Users\chuanbiao.liu\helloworld-webpart\node_modules\node-sass\vendor\win32-x64-57\binding.node
Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 8.x

Found bindings for the following environments:
  - Windows 64-bit with Node.js 8.x

This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass --force` to build the binding for your current environment.

 解決:執行npm install node-sass 后執行  npm rebuild node-sass  命令。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM