browserify + grunt を使用して、アプリのクライアント側バージョンとサーバー側バージョンの 2 つの個別の JS 出力を生成しています。例えば。
gruntfile.js
browserify: {
server: {
files: { 'dist/server.js': ['src/serverside.js'], }
},
client: {
files: { 'dist/client.js': ['src/clientside.js'], }
}
}
すべてがうまく機能し、2 つの個別のファイルを取得します。
ここで、クライアント側アプリで browserify-shim を使用して、CDN からいくつかの共通ライブラリを参照したいと考えています。
例えば。
"browserify-shim": {
"libThing": "global:LibThing"
},
"browserify": {
"transform": [
"browserify-shim"
]
}
問題は、これがクライアントとサーバーの両方のバージョンでそれをシムすることです。サーバーでは、このようなものはグローバルに存在しません。
この shim を (サーバーではなく) クライアントだけに適用したい
私が試してみました
"browserify-shim": {
"server": {
}
"client": {
"libThing": "global:LibThing"
}
},
"browserify": {
"transform": [
"browserify-shim"
]
}
しかし、ファイルごとに個別のシムのセットを使用するようにbrowserifyに指示する方法がわかりません。