2016-07-15 4 views
3

私はアプリケーションを持っており、MomentJSをインポートしてValueConvertingで使用しようとしています。私はpackage.jsonファイルに行って、私のJSPMの依存関係に以下を追加しました:AureliaアプリケーションにMomentJSを追加するには

"moment": "npm:[email protected]^2.14.1" 

しかし、私は私のファイルからそれをインポートしようとすると、それはモジュールを見つけることができません:

import moment from '../moment'; 

私はsrcフォルダから1ディレクトリ深いファイルにインポートしようとしています。したがって、このファイルはsrc/folder/fileにあります。

瞬間をインポートするにはどうすればよいですか?私たちは別のパッケージをインポートするためにしなければならないはずです

+0

これはaswerはありませんが、この問題の議論はここで今があります:https://github.com/aurelia/skeleton-navigation/issues/606 –

+0

@AshleyGrant瞬間が組み込まれて来るんスターター/初心者のキットで? – James

+1

いいえ、そうではありません。ブルーバード、ポリフィルのフェッチ、ブートストラップ、フォントの素晴らしい、およびjqueryは、スケルトンに含まれる唯一のものです。 –

答えて

7

唯一のものはpackage.jsonファイルの依存関係に それを追加して、 正しいビルドを実行しているのですか?

絶対に必要な場合を除き、package.jsonファイルを手動で編集しないでください。インストールするにはjspm install momentを使用してください。 package.jsonファイルに行を追加するだけでは、実際には何も達成されません。

package.jsonに行を追加しました。追加した行は正しいので、jspm installを実行して、実際にコードをプルダウンしてプロジェクトに入れる必要があります。

次に、瞬間をインポートするために、あなたはこれを行う必要があります:

import moment from 'moment'; 

は今、あなたはあなたのコード内で使用できるようになりまし moment()機能を持っています。

+0

私はVS2015で働いていて、パッケージマネージャコンソールでjspmをインストールしようとしていますが、私は "用語 'jspm'が認識されません。また、私はjspmのインストールの瞬間を実行すると、それはどちらかを認識しません。助言がありますか? – James

+0

jspmがインストールされていますか? npm 'npm install -g jspm'を使用してインストールします。 –

+0

私はそのトリックをしたかもしれないと確信しています。それは単に永遠に取っている。どのようにnpmを使うのか、そしていつjspmを使うのか分かっていますか? – James

3

私たちはAureliaのTypeScriptでMomentを使用して同じ問題を抱えました。

JSPMからインストールされたMoment.jsには、何らかの理由で型定義が含まれていません。ここで

は、私はそれを固定する方法である:config.jsので

あなたは

"moment": "npm:[email protected]", 

を使用する必要があります(私は2.14.1の問題を持っていた)

その後、型定義を見つける必要がありますそれはあなたの作品に追加してください。typings.json

"github:typed-typings/npm-moment#a4075cd50e63efbedd850f654594f293ab81a385"はこのトリックでした。

{ 
    "name": "my-cool-app-name", 
    "dependencies": { 
     .... 
     "moment": "github:typed-typings/npm-moment#a4075cd50e63efbedd850f654594f293ab81a385" 
    }, 
    "globalDevDependencies": { 
    ........ 
    } 
} 

そしてIは、CLI jspm installに入力し、次いでtypings install(JSPMおよびタイピングの両方がグローバルにインストールする必要があり、タイプnpm install jspm -gnpm install typings -gそれがない場合)。ファイルに次のような瞬間をインポートできるようになりました。

import * as moment from 'moment'; 

希望します。

7

aurelia.jsonファイル の依存関係セクションに次の

  • が追加--save --global DT〜瞬間をインストール
  • タイピング--save瞬間をインストールする手順に

    1. NPMに従ってください
      • { "名前": "瞬間"、 "パス": "../node_modules/moment"、 "主": "モーメント"}
    2. .tsファイルでこれを参照してください。
      • import * 'moment'から 'moment';
  • 関連する問題