[vue]Vue实例上的方法
Vue实例数据事件生命周期1方法数据vm.$watchvm.$setvm.$delete1.1vm.$watch(exp,callback,options)exp:String|Functioncallback:parameternewVal,oldValoptions:{immediate,deep}观察Vue实例的表达式或函数计算结果发生变化,会返回取消观察的函数,调用{{bar.foo}}后取消观察span>原值:{{oldVal}}原值:{{newVal}}
深度监控对象时,可以使用computed属性进行sequence反序列化和反序列化,不使用deep选项dee也可以实现深度监控p为深度监控时,只检测变化,oldVal和newVal为最新值。无需深入监控,直接监控具体属性,检测变化前后的值,然后处理1.2vm.$set(target,key,value)vm.$delete(target,key)adds或修改响应对象的属性,target不能是Vue实例或Vue实例的根数据对象函数与Vue.set()和Vue.delete()一致Vue.set()和Vue.set()vue.delete()2Eventvm.$onvm.$emitvm.$oncevm.$off2.1vm.$emit(eventName,...args)vm.$on(event,callback)触发并绑定当前实例Event//父组件
{{uname}} //子组件
也可以在父组件中使用v-on
以on的形式绑定事件,函数在父组件处理,事件在子组件触发传入数据,在父组件中调用,实现子组件到父组件的数据传递。也可以直接将函数传递给子组件,在子组件中通过props接收组件,调用时传入参数,父组件执行回调时也可以接收子组件的数据。2.2vm.$once(event,callback)和vm.$on类似,也是用来绑定事件的,只触发2.3vm.$off(event,callback)解绑事件一次。如果传入事件数组,则可以解绑多个事件。没有参数时,去掉所有事件监听。3生命周期vm.$mountvm.$forceUpdatevm.$nextTickvm.$destroy3.1vm.$mount(elementOrSelector)手动挂载一个未挂载的实例constMyComponent=Vue.extend({data(){return{price:"九十五pence"}},template:'
加一件衬衫是{{price}}
'})newMyComponent().$mount("#app")3.2vm.$forceUpdata()强制重新Vue实例的渲染只影响实例本身和slot的内容,不影响所有子组件3.3vm.$nextTick(callback)回调会延迟到下一个DOM更新周期执行。更改数据后获取最新的DOM元素,无参时返回一个Promise。可以使用async/await执行同步代码Vue.nextTick()3.4vm.$destroy()销毁一个实例。清理它与其他实例的连接,解绑它所有的命令和事件监听器