Vue.js是什么
Vue.js 是用于构建交互式的 Web 界面的库。
Vue.js 提供了 MVVM 数据绑定和一个可组合的组件系统,具备简单、灵活的 API。
Vue.js(相似于view)是一套构建用户界面的渐进式框架。与其余重量级框架不一样的是,
vue采用自底向上增量开发的设计。vue的核心只关注视图层,它不只易于上手,还便于与
第三方库或即有项目整合。另外一方面,当与单文件组件和vue生态系统支持的库结合使用时,
vue也彻底可以为复杂的但也应用程序提供驱动。html
若是你喜欢下面这些,那你必定会喜欢 Vue.js:vue
直接下载并用 <script> 标签引入,Vue 会被注册为一个全局变量。webpack
Vue.js 官网下载地址:http://vuejs.org/guide/installation.htmlweb
咱们能够在官网上直接下载生产版本应用在咱们项目中。vuex
在用 Vue.js 构建大型应用时推荐使用 NPM 安装:npm
# 最新稳定版本 $ npm install vue # 最新稳定 CSP 兼容版本 $ npm install vue@csp # 开发版本(直接从 GitHub 安装) $ npm install vuejs/vue#dev
接下来咱们建立一个 view 层 HTML 文件:vueapp.htm,以及 model 层文件:vueapp.js,而后经过 vue.js(使用v-model这个指令)完成中间的底层逻辑,实现绑定的效果。改变其中的任何一层,另一层都会改变。app
vueapp.htm 文件代码:框架
<div id="app"> <p>{{ message }}</p> <input v-model="message"> </div>
vueapp.js 文件代码:less
new Vue({ el: '#app', data: { message: '菜鸟教程!' } })
以上实例中 {{message}} 会根据输入框 input 的改变而改变,若是你不想让其变化能够修改成:异步
{{* message }}
同时还支持一些简单的表达式:
<!-- 字符串链接 --> {{ message + '官网地址:www.runoob.com' }} <!-- 字符串反转 --> {{ message.split('').reverse().join('') }}
列表输出使用 v-for(v-for取代了1.0之前版本中的v-repeat) 这个指令就能完成:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> <script src="http://static.runoob.com/assets/vue/1.0.11/vue.min.js"></script> </head> <body> <div id="app"> <ul> <li v-for="todo in todos"> {{ todo.text }} </li> </ul> </div> <script> new Vue({ el: '#app', data: { todos: [ { text: 'Learn JavaScript' }, { text: 'Learn Vue.js' }, { text: 'Build Something Awesome' } ] } }) </script> </body> </html>
在字符串模板中,如 Handlebars,咱们得像这样写一个条件块:
<!-- Handlebars 模板 --> {{#if ok}} <h1>Yes</h1> {{/if}}
在 Vue.js,咱们使用 v-if 指令实现一样的功能:
<h1 v-if="ok">Yes</h1>
也能够用 v-else 添加一个 "else" 块:
<h1 v-if="ok">Yes</h1> <h1 v-else>No</h1>
与Linux中的管道相似,vue.js也使用的是|:
{{message | uppercase}}
这样就能输出message的大写了,过滤器也能串联在一块儿使用:
{{message | reverse | uppercase}}
这里reverse并非内建的过滤器,咱们能够用Vue.filter自定义:
Vue.filter('reverse', function (value) { return value.split('').reverse().join('') })
补充
bulid--webpack的整个开发框架
config--webpack构建开发、测试、发布环境配置
dist--prod 发布以后的文件
src--当前全部项目文件都在其中
--assets-- 当前项目全部静态文件(img字体less等)
--use-- 当前项目路由/use/以及其子路由页面的展现
--components--当前项目全部组件(基础组件、form组件、功能组件等)
--vuex-- 当前项目 全部组件 通讯相关
Code
组件实现的代码(其中包括了html、less、js)
转载自Vue.js入门教程