2017-04-11 81 views
2

使用ember cli設置的標準項目好像在使用cli生成控制器/路由/模型等時使用ES6模塊。有時候,雖然我想導入/導出一個額外的功能/模塊,即。我可能想要在控制器中使用一個單獨的文件編寫一個函數。 當我嘗試以標準ES6方式導入函數時,ember-cli似乎在處理它時遇到了問題。 比方說,我已經創建了控制器:如何在ember.js中使用ES6模塊(使用ember cli)?

ember g route tesit 

然後我在app /路由/調用testIt/logger.js

const logger = function(msg) { 
 
    console.log(msg); 
 
}; 
 

 
export default logger;

創建一個功能,它導入我的controller app/routes/testit.js:

import Ember from 'ember'; 
 
import logger from './testit/logger.js' 
 

 
export default Ember.Route.extend({ 
 
    beforeModel() { 
 
    logger('it works'); 
 
    } 
 
});

然後我得到以下錯誤:

Error: Could not find module myproject/routes/testit/logger.js imported from myproject/routes/testit

我該如何解決呢?

+2

從'import logger'中刪除'.js'/testit/logger.js'' – ykaragol

+1

感謝ykaragol,有趣的是 - babel可以和擴展一起使用,也可以不使用它。儘管如此 - 真棒! :-) –

+0

感謝Alan Bogu。我將它複製爲答案並添加了一個參考。 – ykaragol

回答

相關問題