2017-01-30 8 views
0

私のESNext aurelia-cliプロジェクトでは、bs58というnpmモジュールを使用しようとしています。 bs58はノードバッファを使用しているので、バッファサポート用のnpmバッファモジュールをブラウザに含めました。バッファは他のいくつかのモジュールに依存しています。 aurelia.jsonでaurelia-cliでバッファnpmパッケージをバンドルしてインポートするには?

私はパッケージとの依存関係出マッピングされました:私は私のコードに続いて

 ... 
     { 
     "name": "base64-js", 
     "path": "../node_modules/base64-js", 
     "main": "index" 
     }, 
     { 
     "name": "ieee754", 
     "path": "../node_modules/ieee754", 
     "main": "index" 
     }, 
     { 
     "name": "buffer", 
     "path": "../node_modules/buffer", 
     "main": "index", 
     "deps": [ 
      "base64-js", 
      "ieee754" 
     ] 
     }, 
     { 
     "name": "base-x", 
     "path": "../node_modules/base-x", 
     "main": "index" 
     }, 
     { 
     "name": "bs58", 
     "path": "../node_modules/bs58", 
     "main": "index", 
     "deps": [ 
      "base-x" 
     ] 
     } 
     ... 

を:私はbs58.decodeを呼び出すとき

import bs58 from 'bs58'; 
... 
bs58.decode(...); 

私はバッファがある」取得定義されていません"。 私はいくつかの方法でバッファをインポートしようとしましたが、何もグローバルバッファオブジェクトを定義するものはありません。

import 'buffer'; 
import Buffer from 'buffer'; 
import { Buffer} from 'buffer'; 
require('buffer'); 

aurelia-cliにバッファーを含める正しい方法はありますか?

+0

暗闇でドッキリ... '' bs58ためDEPSのリストに '「バッファー」を追加してみてください'bs58'は' buffer'に依存するようだからです。また、 '' main ''が' ../ node_modules/buffer'フォルダ内の 'index.js'であるかどうかを調べることができますか?必ずしもインデックスではない。 'main'がインポートするメインのJavaScriptファイルを指していることを確認してください。 – LStarky

答えて

1

ベース-Xパッケージはグローバルバッファを探しているので、それを1つずつ与える:

// aurelia.json 
{ 
    "ieee754", 
    "base64-js", 
    "buffer", 
    "base-x", 
    "bs58" 
} 


// some js file 
import { Buffer } from 'buffer'; 
window.Buffer = Buffer; 
import bs58 from 'bs58'; 
関連する問題