reactjs - 应该如何编写反应页面中的脚本标记以将其正确包含在 webpack 中?
问题描述
我正在尝试在我的 HTML 页面中包含 react。起初我是这样尝试的:
<script src="js/custom/custom.js"></script>
但是该语法给了我以下错误:
未捕获的语法错误:无法在模块外使用 import 语句
所以我添加了模块属性:
<script type="module" src="js/custom/custom.js"></script>
但是这样,webpack 无法正确解析模块路径,给我这个错误:
未捕获的类型错误:无法解析模块说明符“react”。相对引用必须以“/”、“./”或“../”开头。
我已经使用自定义入口路径设置了 webpack,如下所示:
const webpack = require('webpack');
const path = require('path');
module.exports = {
entry: './js/custom/custom.js',
output: {
path: path.join(__dirname, '/build'),
publicPath: '/',
filename: 'bundle.js'
},
devServer: {
contentBase: path.join(__dirname, '/'),
port: 9000
},
解决方案
html-webpack-plugin
是你需要的东西
看看这个_
该插件将为您生成一个 HTML5 文件,该文件使用脚本标签在正文中包含所有 webpack 包。只需将插件添加到您的 webpack 配置中,如下所示:
var HtmlWebpackPlugin = require('html-webpack-plugin');
var path = require('path');
...
plugins: [new HtmlWebpackPlugin()]
..
推荐阅读
- python - 运行同一 Discord Bot (Discord) 的多个实例的有效方法
- python-3.x - wx.xml.XmlResource.Get().LoadPanel:不起作用
- parse-platform - 解析服务器电子邮件模板多种语言
- java - 在内部类中的私有类中调用私有方法
- macos - Terratest 在 Mac 上找不到 terraform
- python - 打印数组的对应值
- php - 使用 PHP 输出缓冲区替换 HTML 元素非常慢
- python - pd.to_datetime - 用什么填充缺失值
- angular - Angular 中的 D3.js 拖动
- excel - 当 VBA 错误处理程序导致错误时该怎么办?