<script>
    export default {
        data() {
            return {
                x1: undefined,
                x2: [],
                x3: {}
            }
        },
        methods: {
            t1() {
                ...
            },
            t2() {}
        }
    }
</script>

export default是ES6的语法,意思是将这个东西导出,你要import 引入东西,导出了才能引用,data是一个函数是因为data是被很多组件共享的。

如果 data 是一个对象的话,每次实例化会造成所有的实例共享引用同一个数据对象。

data 是函数的话,每次创建一个新实例后,调用 data 函数,用return返回初始数据的一个全新副本数据对象,就避免了所有实例共享引用同一个数据对象。

1.关于export default,我只在本vue文件中使用,为什么还要导出?

export default是写组件用的,导出了才能在页面组件上引用。

2.既然return 是返回全新副本对象。那为什么methods里面的方法就不用return呢?按理说,肯定有相同名称的方法在不同的.vue文件里。

不同的.vue文件方法不会冲突是因为其方法只能在组件上使用,是其私有的,父组件直接调用不了子组件的方法的,所以才有了父子组件间的通信传递。

3.vue的文件可以看成是一个组件,export default 只是为了导出去,说明这个vue文件是可以被别的组件import 的。

4.data里需要写return的原因,文档里写的很明白。

为什么.vue文件需要使用export default

GitHub 加速计划 / vu / vue
80
16
下载
vuejs/vue: 是一个用于构建用户界面的 JavaScript 框架,具有简洁的语法和丰富的组件库,可以用于开发单页面应用程序和多页面应用程序。
最近提交(Master分支:4 个月前 )
73486cb5 * chore: fix link broken Signed-off-by: snoppy <michaleli@foxmail.com> * Update packages/template-compiler/README.md [skip ci] --------- Signed-off-by: snoppy <michaleli@foxmail.com> Co-authored-by: Eduardo San Martin Morote <posva@users.noreply.github.com> 6 个月前
e428d891 Updated Browser Compatibility reference. The previous currently returns HTTP 404. 6 个月前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐