🦋 目前国内前端MVVM最火的框架.. 前段时间写了一个About页面, 这几天顺带整理一下知识点.
Vue.js
Vue.js是当下很火的一个JavaScript MVVM库,它是以数据驱动和组件化的思想构建的.
类似的有Angular.js
.
- 可以建立DOM和数据之间的绑定
- 可以按功能/组件抽离HTML代码
相关
Vue 项目实践 - 持续更新
功能部分
基础
- 数值默认双向绑定
- 支持 条件语法特性/功能函数/生命周期
- 动态设定
style
/class
- 捆绑
event
- 渲染生命周期
高级
单文件组件.vue
定义:
1 2 3 4 5 6 7 8
| <template> <h1>This is title</h1> </template> <script> export default { name: 'Title' } </script>
|
使用:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| <template> <div id="app"> <img src="./assets/logo.png"> <Title></Title> </div> </template> <script> import Title from './components/Title' export default { name: 'app', components: { Title } } </script>
|
Vue Router
扩展 Vue
按字面意思来看为Vue 路由
其实质也就是用于单页应用管理页面跳转, 负责路径解析.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15
| import Vue from 'vue' import Router from 'vue-router' import Hello from '@/components/Hello'
Vue.use(Router)
export default new Router({ routes: [ { path: '/', name: 'Hello', component: Hello } ] })
|
Vuex
扩展 Vue
当开发大型项目时, 为防止 Vue 太过臃肿, 使用 Vuex 管理数据状态.
webpack
一款模块加载器兼打包工具
使用模块的理念来处理 JS/CSS/图片等资源文件
指令
1 2 3 4 5 6 7 8 9
| # 安装 npm install webpack --save-dev # 执行 webpack --display-error-details # 输出详细错误 --watch # 实时监听并自动打包 --config <file> # 指定配置文件打包 -p # 压缩打包 -d # 生成map映射文件
|
配置(webpack.config.js)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| module.exports = { plugins: [], entry: {}, output: {}, module: { rules: [] }, resolve: { extensions: [], alias: {} } }
|
入口文件(main.js)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
| import Vue from 'vue' import App from './App' import router from './router' import store from './store/index'
import holderjs from 'holderjs'
import appScss from './assets/app.scss' import fontAwesomeCss from './assets/font-awesome-4.7.0/css/font-awesome.css'
Vue.config.productionTip = false
new Vue({ el: '#app', router, store, template: '<App/>', components: { App } })
|
未完待续ing