2016-04-14 2 views
1

Я изучаю основы Аурелия, и пришли через этот код:каталог в Aurelia

import moment from "moment"; 

export class DateFormatValueConverter { 
    toView(value) { 
     return moment(value).format('MMMM Do YYYY, h:mm:ss a'); 
    } 
} 

Мой вопрос, где же он ожидал найти moment в первом заявлении? Я получаю эту ошибку:

aurelia-logging-console.js:86 ERROR [app-router] Error: XHR error (404 
Not Found) loading http://localhost:9000/dist/moment.js(…) 

Затем я попытался сделать npm install moment --save и теперь можно увидеть в моем файле package.json:

"dependencies": { 
    "moment": "^2.12.0", 
    "numeral": "^1.5.3" 
    } 

Но ошибка не будет устранена. Может кто-нибудь объяснить, где я должен хранить moment?

Обновление: Я искал каталог dist в соответствии с ошибкой, но я не уверен, как это заселено. Он содержит точно такие же файлы, как в моем каталоге src, но как это работает?

+0

вы используете systemjs или Webpack? –

+0

Я следую этому руководству. http://aurelia.io/docs.html#/aurelia/binding/1.0.0-beta.1.2.1/doc/article/binding-value-converters До сих пор я использовал 'npm' и' jspm' согласно к учебнику. – akshayKhot

ответ

4

Вы должны установить его с помощью jspm, а не npm. Как это:

jspm install moment; 

Затем вы сможете загрузить:

import moment from "moment"; 
+0

Спасибо, что сработало. – akshayKhot

+0

У меня есть одно сомнение. Когда мы используем 'npm' и когда использовать' jspm'? Я помню, как в начале урока делал «npm install». – akshayKhot

+0

Вы должны использовать npm для установки инструментов сборки, таких как 'gulp',' jspm' и некоторые другие вещи. Чтобы установить библиотеки, которые будут использоваться вашим приложением, вы должны использовать JSPM. Однако скелет webpack, который является еще одним подходом к разработке в Aurelia, не использует JSPM. В этом случае вы должны установить NPM инструменты сборки и библиотеки. –