我一辈子都想不通这个。
我正在使用 raty() 插件,但我收到控制台错误“TypeError: $(...).raty is not a function”。
在我的 webpack.config.js 中:-
entry: {
app: [
srcFolder + '/index.js',
jsSource + '/popper/popper.js',
jsSource + '/bootstrap/index.js',
ratySource,
srcFolder + '/css/main.scss'
],
},
plugins: [
new webpack.ProvidePlugin({
$: path.resolve(__dirname, jQuerySource),
jQuery: path.resolve(__dirname, jQuerySource),
"window.jQuery": path.resolve(__dirname, jQuerySource),
Popper: path.resolve(__dirname, popperSource),
raty: path.resolve(__dirname, ratySource),
}),
]
在我的组件中: -
componentDidMount(){
$('.star-rating').raty({
half: true,
readOnly: true,
score: function() {
return $(this).attr('data-score')
},
})
}
奇怪的是,Raty 在编译时被 webpack 包含(至少据我所知),依赖关系图似乎没有将 Raty 作为依赖项,并且 Raty 模块在组件之后在 app.js 中编译就是这个电话。
我完全坚持这一点,我非常感谢任何人可以提供给我的任何帮助。