/**黑马*/
<!--
1.Object.defineProperty
ES6提供的原生方法
Object.defineProperty(data,'name',{
//访问data.name属性的时候会自动调用,并且get函数的返回值就是通过你data.name的值
get() {
return '菜菜老师'
},
// 设置一个对象属性的时候自动调用的函数,会把设置的最新值当做实参传入set函数
// data.name = 'hahaha'
set(newval) {
// 这个位置 只要 数据发生变化 我们就可以做任何想做的事情
// AJAX console.log 操作dom
}
})
响应式的核心API
2.数据反应到视图
数据的变化可以引起视图的变化(通过操作dom把数据放到对应的位置上去,如果数据变化之后就用数据最新的值再放一遍)
方法一:命令式操作
1.document.querSelecector('app p').innerText = data.name
2.set函数中重新执行一下document.querSelecector('app p').innerText = data.name
方法二:声明式渲染