2016-07-27 14 views
0

私はDjango Piplineを使ってDjangoプロジェクトを開発し、アプリケーションの静的ファイルをデプロイするときにCSSとJavaScriptファイルを処理しています。 Babelを使用してJSXソースをそのプロセスでJavaScriptにコンパイルしたいと思います。このために、babelを呼び出してJSXファイルを渡すパイプラインプラグインを作成する必要があります。バベルとその依存関係をインストールするには依存関係としてインストールされたコマンドを実行する方法

、私は最小限package.jsonを設定している:

{ 
    "name": "my-project", 
    "version": "1.0.0", 
    "description": "", 
    "dependencies": [ 
     "[email protected]", 
     "[email protected]" 
    ] 
} 

私はnpm installを実行すると、それはnode_modulesに必要なすべての依存関係をインストールします。

これはすべて正常に動作しますが、私には分かりません。私はbabelバイナリを実行する簡単な方法を発見していません。 npmnpm binによって返されるnode_modules/.binの下でこれらのバイナリを、インストールします。

$ find node_modules -name babel 
node_modules/.bin/babel 
node_modules/babel-cli/lib/babel 

$ npm bin 
[...]/node_modules/.bin 

例えば、その後に意図された方法は何ですかバイナリbabelを実行しますか?

このディレクトリを$PATHに置く必要がありますか? activateスクリプトに似たスクリプトがvirtualenvから届いていますか?代わりにプロジェクトのパスをハードコードする必要がありますか?

私は、npmの作者がこのユースケースを考えていると確信しています。さもなければ、Babelのようなプロジェクトはnpmの意図された使用法の灰色の領域に住んでいたでしょう。

答えて

1

npmスクリプトを使用すると、node_modules/.binのバイナリがPATHに追加されます。だから、あなたはそうのように、たとえば、"build"スクリプトを作成することができます。

{ 
    "name": "my-project", 
    "version": "1.0.0", 
    "description": "", 
    "dependencies": [ 
     "[email protected]", 
     "[email protected]" 
    ], 
    "scripts": { 
     "build": "babel script.js" 
    } 
} 

そしてスクリプトを実行するためにnpm run buildを行います。

関連する問題