Reactjs Web包生成的react应用程序中未触发js事件
剧透:我倾向于一个网页问题,而不是React(因为对于一个普通的React应用程序,采取直接的形式Reactjs Web包生成的react应用程序中未触发js事件,reactjs,webpack,webpack-5,Reactjs,Webpack,Webpack 5,剧透:我倾向于一个网页问题,而不是React(因为对于一个普通的React应用程序,采取直接的形式创建React应用程序事情都会起作用)。但是,这只会发生在 主要问题是一个简单的事件(例如,onClick永远不会执行),这扩展到没有使用js(手风琴、复杂的导航行为等)。因此,以下方法不起作用: alert(“测试耶!”)}>点击我! 当使用库的按钮组件时,它也不起作用,例如react bootstrap或semantic ui react(在这两个库中都进行了测试) 网页包配置如下所示: co
创建React应用程序
事情都会起作用)。但是,这只会发生在
主要问题是一个简单的事件(例如,onClick
永远不会执行),这扩展到没有使用js(手风琴、复杂的导航行为等)。因此,以下方法不起作用:
alert(“测试耶!”)}>点击我!
当使用库的按钮组件时,它也不起作用,例如react bootstrap
或semantic ui react
(在这两个库中都进行了测试)
网页包配置如下所示:
const path=require(“路径”);
const HtmlWebPackPlugin=require(“html网页包插件”);
module.exports={
条目:path.resolve(uu dirname,“./src/index.js”),
模块:{
规则:[
{
测试:/\(js|jsx)$/,
用法:[“巴别塔加载器”]
},
{
测试:/\(scss | css)$/,
用法:[“样式加载器”、“css加载器”、“sass加载器”]
}
]
},
决心:{
扩展名:[“*”、“.js”、“.jsx”]
},
输出:{
path:path.resolve(_dirname,“dist”),
文件名:“./bundle.js”
},
插件:[
新HtmlWebPackPlugin({
模板:“./src/index.html”,
文件名:“./index.html”
})
]
};
package.json是:
“依赖项”:{
“引导”:“^4.5.0”,
“jquery”:“^3.5.1”,
“popper.js”:“^1.16.1”,
“反应”:“^17.0.1”,
“反应dom”:“^17.0.1”
},
“依赖性”:{
“@babel/core”:“^7.12.10”,
“@babel/preset env”:“^7.12.11”,
“@babel/preset react”:“^7.12.10”,
“babel eslint”:“^10.1.0”,
“巴别塔加载器”:“^8.2.2”,
“css加载器”:“^5.0.2”,
“eslint”:“^7.19.0”,
“eslint配置airbnb”:“^18.2.1”,
“eslint加载程序”:“^4.0.2”,
“eslint插件导入”:“^2.22.1”,
“eslint-plugin-jsx-a11y”:“^6.4.1”,
“eslint插件反应”:“^7.22.0”,
“eslint插件反应挂钩”:“^1.7.0”,
“html网页包插件”:“^4.5.1”,
“节点sass”:“^5.0.0”,
“sass加载程序”:“^10.1.1”,
“样式加载器”:“^2.0.0”,
“网页包”:“^5.19.0”,
“webpack cli”:“^4.4.0”,
网页包开发服务器“^3.11.2”
}
您可以在中找到最小的示例。只需单击按钮,即可看到未显示警报。此外,还有一些注释代码用于Accordion
组件,这显然不起作用
我在想。。。有关于为什么会发生这种情况的提示吗?我的一些想法是绑定函数和注入代码(但是警报出现在bundle.js文件中)。。。提前谢谢
[编辑]
解决方案
删除主html中包含的捆绑包。由于它是自动添加的,因此被添加了两次并导致了问题
- <script src="./bundle.js"></script>
-
我也有同样的问题,请检查index.html
文件并删除脚本
标记。
如果您使用的是html网页包插件
,脚本标记将自动添加到html文件。我也有同样的问题,请检查index.html
文件并删除脚本
标记。
如果您使用的是html网页包插件
,脚本标记将自动添加到html文件中