一、Vue
1.安装脚手架工具 (只需要安装一次)
npm install --global vue-cli / cnpm install --global vue-cli
2.创建项目
1.cd到项目所在目录
2.官方 vue init webpack my-project (不推荐)
推荐这样创建项目。
vue init webpack-simple my-project (没有语法检查)
vue init webpack-simple固定写法 my-project 项目名称
3.cd 到这个项目里面 cd my-project
4.安装依赖 npm install / cnpm install
5.运行 npm run dev
6.编译打包 npm run build
1.安装vue-resource
`npm install vue-resource --save / cnpm install vue-resource --save`
`npm install vue-resource --save-dev`
2.引入vue-resource
import VueResource from ‘vue-resource’
Vue.use(VueResource)
; /*任何插件引入以后都必须use一下
4.其他页面里面使用
二、Vue-router
1.安装vue-router npm install vue-router --save
2.引入vue-router
import VueRouter from 'vue-router'
`Vue.use(VueRouter)`
3.创建组件,引入组件
4.配置路由
1 | const routes = [ |
5.实例化VueRouter
1 | const router = new VueRouter({ |
6.挂载到vue
实例上面
1 | new Vue({ |
App.vue
一定注意配置 组件显示的视图
1 | <router-view></router-view> |
三、gulp
和webpack
一样是web
工程构建工具
gulp
对项目文件进行流程控制。
要进行模块化,需要借助require.js
webpack:gulp
有的功能,webpack
都有。
模块化:一个js
文件就是一个独立的隔绝的作用域。可以把js
文件当成一个对象。
在模块化中,如果a文件需要访问b文件的内容,需要向外暴露出去。
模块化的方式:
1).require.js
—–>> 遵循amd规范
2).`es6 model`
输出
`export`
引入
`import`
3).node.js提供的 ----->> common.js规范
//向外暴露
module.exports = <需要暴露的内容>;
//引入其他文件暴露的内容
//路径的写法:
1.如果从当前路径找文件需要写'./'
2.如果从node_modules中找模块,就直接写模块名字
2.如果从node_modules中找模块,就直接写模块名字,如果找不到,就会从node内置中找,
还找不到就抛出异常。
var obj = require('相对路径');
webpack
支持的以上模块化的模块化方式
借助loader
,插件,预设去处理文件。
使用webpack
1.安装npm install -g cnpm --registry=https://registry.npm.taobao.org
全局安装
cnpm install -g webpack
查看版本
webpack -v
本地安装(在项目路径下安装)
cnpm init ---创建package.json文件
cnpm install webpack --save-dev
//卸载:cnpm uninstall webpack --save-dev
简写:cnpm i webpack -D
完成后在package.json
文件中出现:
//项目的开发依赖,指项目在开发过程中需要用到插件,但是在发布项目后不再需要使用。
"devDependencies": {
"webpack": "^3.1.0"
}
//项目的生产依赖,指项目在开发过程中需要用到插件,但是在发布项目后还需要使用。
例:
1 | cnpm install jquery --save |
webpack
操作:
1.webpack
编辑js文件。
//使用webpack
编译文件webpack
源文件 目标文件
2.webpack
配置后编译,webpack
配置文件:webpack.config.js
:
1 | module.exports = { |
如果只有
webpack
那么只能编译JavaScript
文件。
如果需要编译其他文件,css,html,es6,vue,jsx,ts。。。。
loader
加载器
plugin
插件es6箭头函数
es6promise es6modle es6class
preset
预设es6
所有插件打包好做成预设编译`css`文件需要两个`loader:css-loader style-loader`
编译
es6
语法的loader:babel-loader
第一次安装还需要安装babel
命令
npm install -g babel-cli
安装
npm install babel-loader babel-core -D
`//babel-loader:babel加载器`
//babel-core:babel核心语法
es6
的预设
npm install babel-preset-es2015 -D
babel编译规则需要.babelrc文件配置
四、VueX
1.state为状态的参数。
2.getters为获取器,用于过滤的方法获取参数。
3.mutations是改变状态参数的函数,但是不能直接被调用,需要对应的store.commit(可以额外传参数)。
4.actions不是直接修改状态,而是基于mutations,可以执行异步处理
5.store更像一个容器,装着以上的所有函数和参数,最后需要注入到Vue的实例当中。
- 1.安装
vuex cnpm install vuex --save
- 2.新建文件夹 在这个文件夹里面新建一个
store.js
- 3.在这个js里面引入
vue
和vuex
注意use
- 4.定义state
1 | var state={ |
- 5.mutations 定义方法
1 | var mutations={ |
- 6.类似于计算属性
1 | var getters={ |
- 7.操作 改变mutations context this store
1 | var actions = { /*方法*/ |
8.VueX使用
要用外面定义好的store
1.引入import store from ‘../vuex/store.js’;
2.注册这个store
1 | import store from '../vuex/store.js';//引入 |
1 | {{$store.state.count}} -------{{$store.getters.countState} |
五、代码块
- 1.
page.json
1 | { |
- 2.
entry
文件main.js
1 | import Vue from 'vue'; |
- 3.
Store
文件配置
1 | import Vue from 'vue'; |