Является ли сокращенный синтаксис метода ES6 также допустимым ES5? - PullRequest
0 голосов
/ 31 августа 2018

Вот фрагмент (из объекта конфигурации Vue):

data() {
    return {
        current: ''
    };
},

У меня есть два совершенно разных проекта, которые предполагается передать с помощью Babel, однако оба вывода по-прежнему включают приведенный выше синтаксис. Webpack и Babel намного выше моей зарплаты, или я ошибаюсь относительно того, что является действительным ES5?

Один из проектов является предметом этого вопроса, Webpack: почему vue-loader не переносится? , а другой - новая установка с использованием vue-cli.

UPDATE:

Вот синтаксис, который я ожидал в выводе.

data : function () { 
    return {}; 
}

ОБНОВЛЕНИЕ 2:

Эта ссылка от MDN, кажется, ясно показывает, что это только ES6, https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Functions/Method_definitions

1 Ответ

0 голосов
/ 10 сентября 2018

Ваш синтаксис действителен ES5, а также ES6. В конфигурации вашего компонента data является ключом к объекту конфигурации, поэтому правильный формат:

data: function(){
  return {
    some_key: some_value
  }
}

В синтаксисе ES6 вы можете написать:

data: ()=>{ return { some_key: some_value}}
...