2016-12-06 4 views
-2

Я считаю, что приведенный ниже код является незаконным как в ES6, так и в ES5.Каков синтаксис этого?

const app = new Vue({router}).$mount('#app') 

Поскольку {} маршрутизатор не так, но этот пример успешного выполнения here.

Не могли бы вы объяснить, что такое синтаксис? Что я упустил?

+1

'{маршрутизатор}' * не * неправильно в ES6. – Oriol

+1

'{router}' как '{router: router}'. Обратите внимание: свойство Object не является переменной, но может иметь значение свойства Object. – PHPglue

ответ

0

Шаблон создает объект, имеющий свойство "routes" со значением маршрутов массива.

const routes = [ 
 
    { path: '/foo', component: "Foo" }, 
 
    { path: '/bar', component: "Bar" } 
 
] 
 

 
function props(prop) { 
 
    console.log(prop) 
 
} 
 

 
props({routes});

+0

{routes} - объектный литерал. Это должна быть пара ключевых значений (a: «1»). Почему у него только один «маршрут»? –

+1

См. [Назначение деструктурирования] (https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Operators/Destructuring_assignment), [Как правильно использовать javascript, встроенный в аргументы?] (Http: //stackoverflow.com/questions/40297698/how-to-make-use-of-javascript-built-in-arguments-properly/40298741#40298741), [Что это называется в javascript? ({имя, значение}) =>] (http://stackoverflow.com/questions/40470272/what-is-this-called-in-javascript-name-value-span-span/40470289?s=4 | 0,0000 # 40470289) – guest271314

Смежные вопросы