一、安装node环境
1、下载地址为:https://nodejs.org/en/
2、检查是否安装成功:如果输出版本号,说明我们安装node环境成功
3、为了提高我们的效率,可以使用淘宝的镜像:http://npm.taobao.org/
输入:npm install -g cnpm –registry=https://registry.npm.taobao.org,即可安装npm镜像,以后再用到npm的地方直接用cnpm来代替就好了。
检查是否安装成功:
二、搭建vue项目环境
1、全局安装vue-cli
npm install --global vue-cli
2、进入你的项目目录,创建一个基于 webpack 模板的新项目: vue init webpack 项目名
说明:
Vue build ==> 打包方式,回车即可;
Install vue-router ==> 是否要安装 vue-router,项目中肯定要使用到 所以Y 回车;
Use ESLint to lint your code ==> 是否需要 js 语法检测 目前我们不需要 所以 n 回车;
Set up unit tests ==> 是否安装 单元测试工具 目前我们不需要 所以 n 回车;
Setup e2e tests with Nightwatch ==> 是否需要 端到端测试工具 目前我们不需要 所以 n 回车;
3、进入项目:cd vue-demo,安装依赖
安装成功后,项目文件夹中会多出一个目录: node_modules
4、npm run dev,启动项目
项目启动成功:
三、vue项目目录讲解
1、build:构建脚本目录
1)build.js ==> 生产环境构建脚本;
2)check-versions.js ==> 检查npm,node.js版本;
3)utils.js ==> 构建相关工具方法;
4)vue-loader.conf.js ==> 配置了css加载器以及编译css之后自动添加前缀;
5)webpack.base.conf.js ==> webpack基本配置;
6)webpack.dev.conf.js ==> webpack开发环境配置;
7)webpack.prod.conf.js ==> webpack生产环境配置;
2、config:项目配置
1)dev.env.js ==> 开发环境变量;
2)index.js ==> 项目配置文件;
3)prod.env.js ==> 生产环境变量;
3、node_modules:npm 加载的项目依赖模块
4、src:这里是我们要开发的目录,基本上要做的事情都在这个目录里。里面包含了几个目录及文件:
1)assets:资源目录,放置一些图片或者公共js、公共css。这里的资源会被webpack构建;
2)components:组件目录,我们写的组件就放在这个目录里面;
3)router:前端路由,我们需要配置的路由路径写在index.js里面;
4)App.vue:根组件;
5)main.js:入口js文件;
5、static:静态资源目录,如图片、字体等。不会被webpack构建
6、index.html:首页入口文件,可以添加一些 meta 信息等
7、package.json:npm包配置文件,定义了项目的npm脚本,依赖包等信息
8、README.md:项目的说明文档,markdown 格式
9、.xxxx文件:这些是一些配置文件,包括语法配置,git配置等
四、开始我们的第一个vue项目
1、在components目录下新建一个views目录,里面写我们的vue组件
在router目录下的index.js里面配置路由路径
五、项目常见问题
1. import from中@代替 …/
resolve: {
// 自动补全的扩展名
extensions: ['.js', '.vue', '.json'],
// 默认路径代理
// 例如 import from 'vue',会自动到 ‘vue /dist/vue.esm.js’ 中寻找
alias: {
'vue$': 'vue/dist/vue.esm.js',
'@': resolve('src'),
}
},
2. VUE 报错解决方法 Unknown custom element: - did you register the component correctly? For recursive components, make sure to provide the “name” option.
vue在组件引入组件时写成了
import { Sidebar } from './components/Sidebar/index.vue'
会报Unknown custom element: - did you register the component correctly? For recursive components, make sure to provide the “name” option.的错误。
一开始误以为是命名的问题。百度大部分都是这方面的解释。当排除所有可能的问题后才发现…
正确写法应为
import Sidebar from './components/Sidebar/index.vue'
3.安装less报错
3.1 安装
-
安装less依赖,
npm install less less-loader --save
-
修改webpack.base.config.js
在该js中的modules中的rules中增加
// 解析less
{
test: /\.less$/, // 检查文件是否以.less结尾(检查是否是less文件)
use: [
// 数组中loader执行是从下到上,从右到左顺序执行
"style-loader", // 创建style标签,添加上js中的css代码
"css-loader", // 将css以commonjs方式整合到js文件中
"less-loader", // 将less文件解析成css文件
],
},
如果安装后报如下图片错误:
这个异常说明了当前 style-loader
的版本过高(即less-loader版本过高)导致 webpack
的编译错误,需要降低版本
解决方法:降低当前style-loader
版本,降级到5.0.0即可
npm install less-loader@5.0.0 --save-dev
5. 解决vue不能自动打开浏览器的问题
当我们输入npm run dev,运行项目,命令行提示我们运行成功,但是浏览器也没有自动打开,只能自己手动输入。
解决:
1)打开config ==> index.js
2)module.exports配置中找到autoOpenBrowser,默认设置的是false
3)将autoOpenBrowser改为true
4)Ctrl+C,然后我们重启一下,就能自动打开浏览器了