过滤器的使用
时间:{{time|timeFormater}}
时间:{{time|myDate}}
插值语法:{{text}}
t-text
这里可以看到即使文本中写了文字,依然不会显示

插值语法:{{text}}
t-text

例子

N只渲染一次:{{n}}
N会一直变化{{n}}
{{pre}}
{{pre}}

当前的n值是:
n值是上面的10倍:
生命周期:
常用的生命周期钩子
关于销毁vue实例
为了方便生命周期的演示,在这里写一个基础的样例,演示到哪个阶段代码依次添加即可。以下生命周期均和methods同级关系
N的值是{{n}}
//无法通过VM访问到data中的数据和methods中的方法
beforeCreate(){
console.log('beforeCreate');
console.log(this);
debugger;
}

//可以通过vm访问到data中的数据和methods中的方法
created(){
console.log('created');
console.log(this);
debugger;
}

beforeMount(){
console.log('beforeMount');
console.log(this);
debugger;
}
看页面结构

然后我们操作一下Dom

一旦我们结束了debug,我们可以看一下变化。

产生这个是原因是因为Vue把内存中的虚拟Dom变成了真实Dom。
mounted(){
console.log('mounted');
console.log(this);
//document.querySelector('h1').innerText='hah'
debugger
}
这里如果操作dom元素,页面会直接变化

beforeUpdate(){
console.log('beforeUpdate');
console.log(this.n);
debugger
}

updated(){
console.log('updated');
console.log(this.n);
debugger
}

N的值是{{n}}
当我触发点击事件销毁vue,会出现以下结果

-连接每个单词):my-school
效果:

VueComponent实例对象vue实例对象 我们首先准备好一个案例
school组件的本质是一个名为VueComponent的构造函数,来自Vue.extend生成的
然后我们输出一个student看看是什么
console.log(student);

我们可以看到这个一个构造函数,我们要使用它需要 new VueComponent(),我们只要使用或, Vue就会帮我们调用
name我们来验证每次调用Vue.extend,返回的都是一个全新的VueComponent,我们在注册一个组件用于对比。

VueComponent.prototype._proto_ === Vue.prototype