从 node 官网 下载并安装 node,安装步骤只需一路 next 即可,安装完成后,打开命令行工具输入 node -v ,若出现对应版本号则说明安装成功,输入 npm -v,显示 npm 版本信息。
当 node 环境安装完以后,由于 npm 包管理工具有些资源被堵,为了更快更稳定,需要切换到淘宝的 npm 镜像 cnpm 。输入如下命令进行安装和镜像切换,输入 cnpm -v ,可以查看当前 cnpm 版本用来检验安装是否成功 。
npm install -g cnpm --registry=https://registry.npm.taobao.org
vue-cli 提供一个官方命令行工具,可用于快速搭建大型单页面应用。全局安装命令如下,这里脚手架安装的是指 vue-cli2.0 ,命令中加 -g 则表示全局安装 。
cnpm i -g vue-cli
选定目录,命令行跳转到指定目录下,使用如下命令进行项目的创建 ,其中 my-project 为自定义项目名 。
vue init webpack my-project
// 或
vue init webpack-simple my-project
注意:这里是使用 vuecli2.0 新建项目的方法,目录结构和相关配置与 vuecli3.0 创建的项目不一致 。在 vuecli2.0 项目中存在 build 和 config 等配置目录,static 静态目录等 。而在 vuecli3.0 项目中将 webpack 配置项进行了高度融合,不在暴露出来,想要修改对应配置,需在根目录下新建 vue.config.js 文件中进行更改 。同时 vuecli3.0 也没有 build ,config,static 等目录 。
文件内容,如 ez.env.js 中 。
'use strict'
const merge = require('webpack-merge')
const prodEnv = require('./prod.env')
module.exports = merge(prodEnv, {
NODE_ENV: '"ez"',
})
主要是更改文件中 scripts 模块 内容,修改如下 。
"scripts": {
"dev-jz": "webpack-dev-server --env=jz --inline --progress --config build/webpack.dev.conf.js",
"dev-ez": "webpack-dev-server --env=ez --inline --progress --config build/webpack.dev.conf.js",
"dev-tm": "webpack-dev-server --env=tm --inline --progress --config build/webpack.dev.conf.js",
"dev-hs": "webpack-dev-server --env=hs --inline --progress --config build/webpack.dev.conf.js",
"dev-snj": "webpack-dev-server --env=snj --inline --progress --config build/webpack.dev.conf.js",
"build-jz": "node build/build.js --env=jz",
"build-ez": "node build/build.js --env=ez",
"build-tm": "node build/build.js --env=tm",
"build-snj": "node build/build.js --env=snj",
"build-hs": "node build/build.js --env=hs"
},
通过 process.env,来判断当前模块的特有配置值,当运行 npm run dev-jz 或者 npm run build-jz 时,只会显示当前模块特有的配置值。还可以根据 process.env.NODE_ENV 属性来控制不同模块下的请求路径差异化,如示例 env 目录下文件。
在 main.js 中进行控制,在运行和打包当前模块的时候会读取当前模块请求路径等配置。
const curEnv = process.env.NODE_ENV
let curEnvParam = require('../env/' + curEnv)
Vue.prototype.$globalEnv = {
...curEnvParam
};
安装 vue-cli3.0 ,可以使用下列任一命令安装此依赖包。注意:vue Cli 需要 Node 要 8.9 或者更高版本 。
npm i -g @vue/cli
// 或者
yarn global add @vue/cli
打开终端,切换到目标目录下,输入如下 命令 进行项目新建。同时还可以使用 可视化面板 方式来新建项目,安装依赖。
// 命令行
vue create my-demo
// 面板
vue ui
文件内容,如 .env.hs 中 。
NODE_ENV = 'hs'
enableFaceID: true
主要是更改文件中 scripts 模块 内容,修改如下 。
"scripts": {
"dev-jz": "vue-cli-service serve --mode jz",
"dev-ez": "vue-cli-service serve --mode ez",
"dev-tm": "vue-cli-service serve --mode tm",
"dev-hs": "vue-cli-service serve --mode hs",
"dev-snj": "vue-cli-service serve --mode snj",
"build-jz": "vue-cli-service build --mode jz",
"build-ez": "vue-cli-service build --mode ez",
"build-tm": "vue-cli-service build --mode tm",
"build-snj": "vue-cli-service build --mode snj",
"build-hs": "vue-cli-service build --mode hs"
},
后续部分和 vuecli2.0 方式一致,需要注意的是,在 vuecli3.0 项目中由于将复杂的配置不在暴露,打包 时为了确保访问 静态资源路径正确,根目录下新增 vue.config.js 配置文件,进行根路径的相关配置 。
module.exports = {
publicPath: "./", // 基本路径,可以设置成相对路径,这样所有的资源都会被链接为相对路径,打出来的包可以被部署在任意路径
outputDir: "dist", //打包时生成的生产环境构建文件的目录
assetsDir: 'public', // 放置生成的静态资源 (js、css、img、fonts) 的 (相对于 outputDir 的) 目录
/*devServer: {
proxy: 'http://localhost:8080'
}*/
}