Javascript 使webpack在捆绑包中包含一个全局jquery插件
我正在使用一个旧的ui库,它要求它们的ui组件是jQuery的扩展。我们有一些扩展ui组件的文件。在应用程序的主逻辑启动之前,这些文件需要在全局上下文中运行 以下是index.js文件:Javascript 使webpack在捆绑包中包含一个全局jquery插件,javascript,jquery,webpack,kendo-ui,Javascript,Jquery,Webpack,Kendo Ui,我正在使用一个旧的ui库,它要求它们的ui组件是jQuery的扩展。我们有一些扩展ui组件的文件。在应用程序的主逻辑启动之前,这些文件需要在全局上下文中运行 以下是index.js文件: import $ from "jquery"; import '@progress/kendo-ui'; document.addEventListener('DOMContentLoaded', () => { $('#main').kendoTelephone(); window.j
import $ from "jquery";
import '@progress/kendo-ui';
document.addEventListener('DOMContentLoaded', () => {
$('#main').kendoTelephone();
window.jquery = $;
});
以下是生成kendoTelephone扩展名的文件:
import '@progress/kendo-ui';
const Telephone = kendo.ui.MaskedTextBox.extend( {
init: function(element, options) {
options || (options = {});
options.mask = "(000) 000-0000";
kendo.ui.MaskedTextBox.fn.init.call(this, element, options);
},
options: Object.assign( {}, kendo.ui.MaskedTextBox.prototype.options, {
name: 'Telephone'
} ),
});
kendo.ui.plugin(Telephone);
export default Telephone;
我如何使网页能够:1.将电话分机文件包括在捆绑包中
2.并以在全局上下文中运行的方式对其进行捆绑 这是我的网页配置:
{
entry: {
index: './src/index.js',
},
mode: 'development',
output: { path: __dirname, filename: 'bundle.js' },
devtool: 'cheap-module-eval-source-map',
module: {
rules: [
{
test: require.resolve('./src/telephone.js'),
use: ['script-loader']
}]
},
plugins: [
new wp.ProvidePlugin({
$: "jquery",
jQuery: "jquery",
"window.jQuery": "jquery"
}),
]
}