1. 为什么 vue 组件中的 data 是一个函数
1. 为了保证组件的独立性和可复用性,data 是一个函数,组件实例的时候,这个函数将会被调用,返回一个对象,计算机会给这个对象分配一个内存地址,实例化几次,就分配几个内存地址
他们地址都不一样,所以每个组件中的数据不会相互干扰,改变其中一个组件的数据,状态,其他组件不会被改变
2. vue 中的什么是模块,什么是组件?
都是功能划分的单位
模块:是一个封装好的应用程序,他只是 js 文件封装
组件:是一个完整的单位个体,可以有 js 可以有 css 和 html
3. 关键字:SSR (服务器端渲染)
假如有一个 data = [ ] ,我们会通过 js 对这个数组进行遍历,和字符串拼接,运行在客户端的时候,这些代码会在客户端执行完成这些功能,然后再去通过浏览器引擎翻译这个字符串,
ssh,将这个环节在服务器完成了
4. computed,methods,watch
computed 计算属性
将函数代码块返回的结果赋值给前面的属性(方法名)
计算属性是由缓存功能的,只要 data 中的数据不发生改变,计算得到的新属性就会被缓存下来,下次使用的时候,不需要重新计算了
methods 方法
需要手动调用,函数代码块中返回的结果就是得到的结果,不具备缓存功能
watch 属性监听
1. watch 中的函数名必须和 data 中的数据名一致,当 data 中的数据发生变化是,watch 中与 data 同名的方法,就会被调用,watch 中可以写 js 逻辑
computed 不需要写太多的逻辑