1
node_moduleが存在しないため、lib/
フォルダにjwplayerがあります。私はそれをインポートできるようにexpose-loader
を使用しようとしました。私のWebPACKでは、私は仕事にこれを取得するために、以下の基本的なセットアップを持っている:webpack 2でエクスポーズローダーを使用してモジュールをロードする
const path = require('path');
module.exports = {
// ...
module: {
rules: [{
test: /\.jwplayer\.js$/,
use: {
loader: 'expose-loader',
options: 'jwplayer', // have also tried `options: { name: 'jwplayer' }`
},
}]
},
resolve: {
alias: {
jwplayer: path.join(__dirname, './lib/jwplayer-7.7.4/jwplayer.js'),
}
},
externals: {
window: 'Window',
}
};
奇妙なことは、jwplayer
はwindow
オブジェクトに露出されているが、それはモジュールとして使用することはできません。
import jwplayer from 'jwplayer';
console.log(jwplayer); // Object {} (not jwplayer)
console.log(window.jwplayer); // function jwplayer() {}
私は間違って読み込んでいますか? webpack 2でjwplayerでどのように読み込むべきですか?
私はパッケージに含めていますか? – corvid
ええ、あなたはまだ同じ問題を抱えている可能性があります:準備ができているjwplayerです。私の経験では、サードパーティのツールの中にはcommonjsと互換性がないものがありますので、スクリプトローダーを使ってインポートします。何らかの理由で財団が私に頭痛を与えていたので、私は過去にjQueryでも同じことをしました。スクリプトローダーがすべてを修正 – Ematipico