1. export default和 export const 的 区别?
export default: 一个文件中只能有一个,名字叫默认导出
export const: 一个文件中可以有好多个,名字叫命名导出
import 引入 export default的时候,import name from './default文件地址';
import 引入 export const的时候,import { name1, name2 } from './const文件地址;
2. 为什么vue组件有的写成export default,有什么用?
- 声明一个vue,相当于 new Vue({})
- 达到可复用的目的,也就是说,export default 相当于导出当前vue组件,在其它引入当前组件时可以使用当前组件中的方法和变量。
3. data()是什么意思?
- 起到局部变量的作用。也就是说,这个data()中return的变量和方法只限于当前声明此data()的组件使用。
- 如果全局vue有个变量叫 user,当前组件也有个变量叫user,那vue里面的到底用哪个?所以data()就起到了变量隔离的一种效果。
- data()使用 returnVue 实例内,单组件的data必须返回一个对象。
- 不使用return包裹的数据会在项目的全局可见,会造成变量污染;使用return包裹后数据中变量只在当前组件中生效,不会影响其他组件。
4. export default中的data()
在简单的vue实例中看到的Vue实例中data属性是如下方式展示的:
let app= newVue({
el:"#app",
data:{
msg:''
},
methods:{
}
})
在使用组件化的项目中使用的是如下形式:
export default{
data(){
return {
showLogin:true,
msg: 'hello vue',
user:'',
homeContent: false,
}
},
methods:{
}
}
为何在大型项目中data需要使用return返回数据呢?
曰:不使用return包裹的数据会在项目的全局可见,会造成变量污染
使用return包裹后数据中变量只在当前组件中生效,不会影响其他组件。