Javascript 阻止Webpack删除jQuery函数?
当我的JS文件与(WebPack版本5)捆绑在一起时,它会删除我的函数。我的配置如下:Javascript 阻止Webpack删除jQuery函数?,javascript,webpack,Javascript,Webpack,当我的JS文件与(WebPack版本5)捆绑在一起时,它会删除我的函数。我的配置如下: var path = require('path'); module.exports = { entry: { main: './Scripts/main.js' }, output: { publicPath: "/js/", path: path.join(__dirname, '/wwwroot/js/'),
var path = require('path');
module.exports = {
entry: {
main: './Scripts/main.js'
},
output: {
publicPath: "/js/",
path: path.join(__dirname, '/wwwroot/js/'),
filename: 'main.build.js'
}
};
我想压缩并捆绑此文件:
function GetModal(e) {
/*Modal code...*/
}
setTimeout(function () {
if ($('div.modalRequest').length > 0) {
$('div.modalRequest').empty();
$.ajax({
type: "GET",
url: '/RequestCall/TextEditorRequestContact',
contentType: "application/json;charset=utf-8",
content: "json",
success: function (data) {
$('div.modalRequest').append(data);
}
});
}
}, 100);
$(function () {
setInterval(function () { $("#btnsliders").click().fadeIn() }, 5000);
})
输出文件如下所示
setTimeout((function() {
$("div.modalRequest").length > 0 && ($("div.modalRequest").empty(), $.ajax({
type: "GET",
url: "/RequestCall/TextEditorRequestContact",
contentType: "application/json;charset=utf-8",
content: "json",
success: function(t) {
$("div.modalRequest").append(t)
}
}))
}), 100), $((function() {
setInterval((function() {
$("#btnsliders").click().fadeIn()
}), 5e3)
}));
在本例中,GetModal
函数被删除
有人知道为什么WebPack会删除这个功能吗?
有什么方法可以防止这种情况发生吗?在webpack.config.js中,告诉webpack不要最小化代码
optimization: {
minimize: false
}
这将阻止Webpack删除GetModal函数。在Webpack.config.js中,告诉Webpack不要最小化代码
optimization: {
minimize: false
}
这将阻止Webpack删除GetModal函数。您在哪里使用
GetModal
?在我看来,Webpack应该删除死代码。我在ajax调用中使用了``getModal``,有什么方法可以阻止它吗?我不明白为什么您要尝试将setInterval
包装在文档就绪的事件处理程序中,并使用以下内容:),100),$(function(){
你在哪里使用getModal
?在我看来,Webpack应该删除死代码。我在ajax调用中使用了``getModal``,有什么方法可以阻止它吗?我不明白为什么你要尝试将setInterval
包装到一个文档就绪的事件处理程序中:},100),$(函数(){
谢谢,它起作用了。但是为什么在最小化过程中它会删除函数而不删除重置?在最小化过程中,GetModal会被删除,因为它没有在任何地方使用。我有一个新问题。GetModal
不会删除,但我不能用onclick=“GetModal(this)”调用它
。我在HTML页面中引用了它,但它显示了此错误未捕获引用错误:在HTMLButtonElement.onclick((索引):39)中未定义GetModal
我该怎么办?您可以通过将GetModal函数分配给window对象,将其转换为全局函数。它可以工作。通常,您可以将所有逻辑与webpack绑定,无需全局变量。window.GetModal=function GetModal(e){}
谢谢,它起作用了。但是为什么在最小化过程中它会删除函数而不删除重置?在最小化过程中,GetModal会被删除,因为它没有在任何地方使用。我有一个新问题。GetModal
不会删除,但我不能用onclick=“GetModal(this)”调用它
。我在HTML页面中引用了它,但它显示了此错误未捕获引用错误:在HTMLButtonElement.onclick((索引):39)中未定义GetModal
我该怎么办?您可以通过将GetModal函数分配给window对象,将其转换为全局函数。它会工作。通常,您会将所有逻辑与webpack捆绑在一起,不需要全局变量。window.GetModal=函数GetModal(e){};