Browserify プロジェクトで Bloodhound と Typeahead を使用しようとしています。私は browserify-shim を使用しています。
パッケージ.json
{
...
"browserify": {
"transform": ["browserify-shim"]
},
"browserify-shim": "./shim.js",
}
shim.js
module.exports = {
...
'typeahead.js/dist/bloodhound': {
exports: 'Bloodhound',
depends: {jquery: 'jQuery'}
}
};
test.js
...
var Bloodhound = require('typeahead.js/dist/bloodhound');
module.exports = function() {
console.log(Bloodhound);
}
空のオブジェクト ({}) を出力します。
コマンドラインからバニラ Browserify を使用して、この関連する質問のすべてに従いましたが、まだサイコロはありません。
追加することで動作させることができました
module.exports = Bloodhound;
Bloodhound.js ファイルに追加されますが、これは理想とはほど遠いものです。browserify-shim はエクスポートを追加すべきではありませんか? 生成された bundle.js に Bloodhound の module.exports がありませんでした。