介绍
前段时间接触到一个库叫做Vue.js,个人感觉很棒,所以整理了一篇博文做个介绍。
Vue读音/vju:/,和view类似。是一个数据驱动的web界面库。Vue.js只聚焦于视图层,可以很容易的和其他库整合。代码压缩后只有24kb。
可以去 这里 。自己整理了一个Vue.js的demo,
快速入门
以下代码是Vue.js最简单的例子, 当input中的内容变化时,p节点的内容会跟着变化。语法介绍
数据绑定 数据绑定就是指将js中的变量自动更新到html中。如下代码,message的默认值是“Hello Vue.js!”,那么当页面启动时,html中的默认值会被设置成“Hello Vue.js”
如果要输出原生的html,可以使用三个大括号来实现
{{{messageHtml}}}
也可以做表达式的绑定
{{length - 1}}
{{ message | capitalize }}
自定义过滤器 Vue.js运行自己定义过滤器。比如:
指令
指令是特殊的带有前缀v-的特性。当表达式的值发生变化时,响应应用特定的行为到DOM。
bind,on指令可以进行缩写
自定义指令
html模板
Vue.js支持对js对象进行判断(if),循环(for)输出。类似于前端模板。
No
<h1 v-show="ok">Hello!
<ul id="example-1">
<li v-for="item in items" track-by="_uid">
{{ $index }} : {{ item.message }}
样式绑定
样式也可以根据js中的变量来动态确定。
<div v-bind:style="styleObject">
事件绑定
可以使用v-on指令来监听DOM事件。
常见的阻止冒泡,禁止默认行为等event方法可以通过修饰符来快速处理。
对特殊按键生效也可以使用修饰符
组件
组件系统是 Vue.js 另一个重要概念,因为它提供了一种抽象,让我们可以用独立可复用的小组件来构建大型应用。注册 通过Vue.extend()来定义一个组件,Vue.component()来注册组件。
<div class="jb51code">
<pre class="brush:xhtml;">
<div id="box">