2

HTMLファイルにスクリプトタグとしてjQueryを追加し、次のように操作するpackage.jsonために追加しました。browserify-shim

  "browserify": {
    "transform": [
      "browserify-shim"
    ]
  },
  "browserify-shim": {
    "jquery": "global:jQuery"
  },

require('jquery')簡単な呼び出しでメイン スクリプト ファイルに公開できます。

問題は、内部的に a を実行するいくつかの jQuery プラグインを使用していることですrequire('jquery')。browserify 変換は依存関係の依存関係に適用されないため、browserify が見つからないためバンドルに文句を言いますjQuery

これで、グローバル変換を適用することで解決できることがわかりました。簡単に行う方法が見つかりません。

Browserify のドキュメントによると、パッケージ ファイルにグローバル変換を適用できないため、次の機能は機能しません (そうなると思います)。

  "browserify": {
    "global-transform": [
      "browserify-shim"
    ]
  },

  "browserify": {
    "transform": [
      "browserify-shim"
    ],
    "global": true
  },

また、次のようにオプションを my に追加しようとしましたGruntfile.jsが、それでも機能しません。

browserify: {
        options: {
            global: true
        },
        dist: {
            files: {
                'js/bundle.js': 'js/script.js'
            }
        },
    },

最後のオプションは、browserify-shimすべての依存関係に手動で a を追加するpackage.jsonことですが、新しいプラグインを追加するたびに同じプロセスを繰り返さなければならないため、やりたくありません。

上記の問題を軽減するためのアイデアはありますか?

4

1 に答える 1