在学习Vue的相关知识时先让我们了解一下Vue.js 是什么? Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。 构建用户界面:不是说如何写出漂亮的页面,如果把数据渲染到模板上。 渐进式:vue.js vue-router axios webpack vuex vue-cli… vue全家桶 vue技术栈 框架:有一套自己的规划,有自己的思想,要求要合适的位置写合适代码,你写的代码等框架去调用。 库:库主要是它一个JS文件中,定义了大量的api,在代码可以直接使用api。jq库。
官网: https://cn.vuejs.org/
作者:尤雨溪是Vue.js框架的作者Vue的配置项:
el:指定模板 new Vue创建出一个根实例 也叫根组件 一个根组件就对应一个模板 所以我们会使用ID选择器date:给模板提供数据的 对象的形式 函数的形式 如果是根组件data可以写在对象的形式,也可以写成函数的形式. 如果是子组件,data必须写成函数的形式,建议,不管什么时候,都写成函数的形式 data:{ msg:"hello vue~~" } data:function () { return{ msg:"hello vue too~" } } 简化: data() { return{ msg:"hello vue too~" } } methods:模板中使用的方法都写在methods中。computed:计算属性 根据data中的数据计算得到一个新数据watch:监听数据的变化1、条件相关的指令:
v-showv-forv-ifv-elsev-else-ifv-show: 控制一个元素是否隐藏,是通过控制CSS中的display来实现的。 v-for 用v-for指令根据遍历数组来进行渲染 v-if: 控制一个元素是否创建或销毁 v-else: v-else是搭配v-if使用的,它必须紧跟在v-if或者v-else-if后面,否则不起作用。 v-else-if: v-else-if充当v-if的else-if块,可以链式的使用多次。可以更加方便的实现switch语句。
2、数据绑定指令:
v-textv-htmlv-modelv-text: v-text主要用来更新textContent,可以等同于JS的text属性。 v-html: 双大括号的方式会将数据解释为纯文本,而非HTML。为了输出真正的HTML,可以用v-html指令。它等同于JS的innerHtml属性。 v-model: 这个指令用于在表单上创建双向数据绑定。 v-model会忽略所有表单元素的value、checked、selected特性的初始值。因为它选择Vue实例数据做为具体的值。
v-model修饰符 <1> .lazy 默认情况下,v-model同步输入框的值和数据。可以通过这个修饰符,转变为在change事件再同步。 <2> .number 自动将用户的输入值转化为数值类型 <3> .trim 自动过滤用户输入的首尾空格
3、事件处理
v-on: v-on主要用来监听dom事件,以便执行一些代码块。表达式可以是一个方法名。 简写为:【 @ 】
事件修饰符 .stop 阻止事件继续传播 .prevent 事件不再重载页面 .capture 使用事件捕获模式,即元素自身触发的事件先在此处处理,然后才交由内部元素进行处理 .self 只当在 event.target 是当前元素自身时触发处理函数 .once 事件将只会触发一次 .passive 告诉浏览器你不想阻止事件的默认行为
使用修饰符时,顺序很重要;相应的代码会以同样的顺序产生。因此,用v-on:click.prevent.self会阻止所有的点击,而 v-on:click.self.prevent 只会阻止对元素自身的点击。
4、属性指令
v-bindv-bind: v-bind用来动态的绑定一个或者多个特性。没有参数时,可以绑定到一个包含键值对的对象。常用于动态绑定class和style。以及href等。 简写为一个冒号【 :】
5、其他指令
v-pre:v-cloakv-oncev-pre: 主要用来跳过这个元素和它的子元素编译过程。可以用来显示原始的Mustache标签。跳过大量没有指令的节点加快编译。 v-cloak:** 这个指令是用来保持在元素上直到关联实例结束时进行编译。 v-once: v-once关联的实例,只会渲染一次。之后的重新渲染,实例极其所有的子节点将被视为静态内容跳过,这可以用于优化更新性能。