vuejs现在都这么写,是ES6吗

问题一

export default{
    fn () {
    
    }
}

以前函数不都是如下这样写吗

export default {
    fn: function (){
        //....
    }
}

问题二

new Vue({
    el:"#app",
    router,
    store
})

不应该是{ key1:val1, key2:val2}

阅读 4.5k
3 个回答

是的,这是es6的写法,关于问题一,函数可以直接声明,fn(){}即可;关于问题二,只有当key和value相同的情况下,才可按照那样的写法,即上述写法相当于 router:router,store:store。如果你设定了一个值为store_1,就需要安装完整格式写成store:store_1,不能简写

对ES6的语法 问题1:定义一个js文件的默认输出,是一个函数

       问题2:属性匹配同名属性。
           e.g `var  router = '*****'  
                var  obj  = {
                        router  //这里router的值,就是上方定义的router的值。
                }`  

这两个问题都用到了es6中的一个新属性:对象属性的简洁表示法

首先针对问题二:

    var foo = 'bar';
    var baz = {foo);
    console.log(baz) //{foo: 'bar'}
    
    //等同于
    var baz = {foo: foo);

同理,除了属性可以简写,方法也可以简写(即问题一):

    var o = {
        method(){
            //something
        }
    };
    
    //等同于
    var o = {
        method: function(){
            //something
        }
    };

如果想具体了解ES6中对象有哪些扩展,可以选择阅读阮老师的大作:http://es6.ruanyifeng.com/#do...

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题