2014-10-01 2 views
2

Используя следующий код в Ember CLI работает:Ember CLI и импорт ... в

import X from 'source'; 
X.doSomething(); 

Однако, используя альтернативную форму:

import {X as Y} from 'source'; 
Y.doSomething(); 

браузер регистрирует исключение:

TypeError: Y is not defined 

В соответствии с ES6 specs это должно работать. Является ли это поведение просто ограничением Ember CLI, или что-то не так с моим синтаксисом?

ответ

0

Я считаю, что ваша проблема заключается в том, что вы используете неправильный синтаксис импорта. Первый фрагмент кода, который у вас есть, - это импорт экспорта по умолчанию, а второй - именованный экспорт. Посмотрите на код ниже:

// This 
import X from 'source'; 
// is to this 
import Y from 'source'; 
// as this 
import { X } from 'source'; 
// is to this 
import { X as Y } from 'source'; 

В вашем случае, вы должны использовать вторую форму, так как у вас есть экспорт по умолчанию. Вы также можете сделать следующее, но я рекомендую против этого для удобства чтения.

import { default as Y } from 'source';