0

FileAPI ライブラリ ( https://github.com/mailru/FileAPI/issues/202 ) は CommonJS モジュールを正式にサポートしていません。browserify-shim を使用してみましたが、機能させることができません。requireingの後fileapi、空のオブジェクトが返されます。ここで再現用のレポを作成しましたhttps://github.com/Prinzhorn/browserify-fileapi

関連する package.json 部分

{
  "dependencies": {
    "fileapi": "2.0.15"
  },
  "devDependencies": {
    "browserify": "11.1.0",
    "browserify-shim": "3.8.10"
  },
  "browser": {
    "fileapi": "./node_modules/fileapi/dist/FileAPI.html5.js"
  },
  "browserify-shim": {
    "fileapi": "FileAPI"
  }
}

ローカルで試してみたい場合:

git clone git@github.com:Prinzhorn/browserify-fileapi.git
npm install
npm run build
chromium-browser index.html

Chromium のコンソールを確認すると、実行中の空の配列が表示されますconsole.log(Object.keys(require('fileapi')))window.FileAPI正しい API を持つグローバルがあることに注意してください。

browserify-shim が FileAPI をシムできるかどうかは誰にもわかりませんか? 依存関係を管理するためにいくつかのエキゾチックなことをしていると私は信じているからです(連結されたファイルは特定のグローバルを期待しています)。

4

1 に答える 1

1

この例で概説されているように、package.json の変換として browserify-shim を使用するように browserify に指示する必要があります。

主にあなたが行方不明です:

"browserify": {
   "transform": [ "browserify-shim" ]
}
于 2015-10-28T19:58:36.080 に答える