本文共 1754 字,大约阅读时间需要 5 分钟。
Vue.js采用MVVM(Model-View-ViewModel)架构,主要包括三层:
通过简单的示例,可以快速理解Vue.js的基本工作原理。
v-model是Vue.js的核心表单修饰符,用于实现表单数据与 Vue 实例的双向绑定。
v-model.trim 可以控制输入的 trimmingv-model实现选项的加绑multiple属性可用来设置多选v-model实现复选框的绑定自定义指令可以扩展Vue.js的功能,例如添加自定义的指令,如v-focus和v-color。
Vue.directive("focus", { inserted: function (e) { e.focus(); }}); Vue.directive("color", { bind: function (e, binding) { e.style.backgroundColor = binding.value.color; }});< input type="text" v-focus >< input type="text" v-color="msg" class="txt" > 侦听器(watch)用于在数据变化时执行回调函数,常用于实时反射数据变化。
章 节:- created:初始化完成时触发- mounted:.vue组件挂载完成时触发- beforeUpdate:数据更新前触发- updated:数据更新后触发示例:data() { return { fName: '', lName: '', aName: '' }},watch: { fName(val) { this.aName = this.lName + val; }, lName(val) { this.aName = val + this.fName; }},methods: {} 与侦听器不同,计算属性(computed)会对其依赖进行缓存,提高性能。
computed: { reverseStr() { return this.msg.split('').reverse().join(''); }},methods: { reverseMsg() { return this.msg.split('').reverse().join(''); }} 过滤器(filter)用于对数据格式化,可以用于输出简化显示。
< p >{msg | lower}过滤器注册:Vue.filter("lower", function (v) { return v.charAt(0).toLowerCase() + v.slice(1);}); 结果将变为: 'school'
内置过滤器 toComputed 可用于转换类型:
{{ num | toComputed型 }}重点在于,过滤器的执行顺序:第一个参数(name)要先传,然后是具体参数。 Vue.js的生命周期方法完整清晰,便于在不同阶段执行逻辑。
mounted: function () { console.log("组件已挂载"); }, beforeUpdate: function () { console.log("数据更新前"); }, updated: function () { console.log("数据已更新"); } 其中:
beforeCreate 和 beforeMount 足够描述各种常见需求。与ES6/ES7相关的Vue.js特性,比如数组方法、回收机制等。
转载地址:http://okyrz.baihongyu.com/