uni-app生成h5找不到main.js

uni-app生成h5找不到main.js

示例代码:

GET https://test37.dianziqingtie.com/main.js net::ERR_ABORTED 404
```

## 操作步骤:
```
无
```

## 预期结果:
```
无
```

## 实际结果:
```
无
```

## bug描述:
```
uni-app生成h5找不到main.js文件
```

| 信息类别       | 详细信息               |
|----------------|------------------------|
| 产品分类       | uniapp/H5              |
| PC开发环境     | Windows                |
| 操作系统版本   | win10                  |
| HBuilderX类型  | 正式                   |
| HBuilderX版本  | 3.2.16                 |
| 浏览器平台     | Chrome                 |
| 浏览器版本     | 96.0.4664.93           |
| 项目创建方式   | HBuilderX              |

![image](https://www.itying.com/uniimg.php?url=https://img-cdn-tc.dcloud.net.cn/uploads/questions/20211208/bd609b4aadf8f6ecd8b7f8dcdbeb00a4.png)

更多关于uni-app生成h5找不到main.js的实战教程也可以访问 https://www.itying.com/category-93-b0.html

8 回复

重新编译出来看看还有么

更多关于uni-app生成h5找不到main.js的实战教程也可以访问 https://www.itying.com/category-93-b0.html


或者你把编译后的dist文件给我,我部署一下试试

uniapp 发布成H5,本来就没有main.js吧?

我使用了混入,在main.js有引入文件啊,main.js丢失,我文件也丢失拉

新HBuilderX升级到3.6.18后,也出现打包成H5后,打包文件中没有main.js文件了。这个问题如何解决?

看起来像是 npm 没有初始化的问题,参考这篇文章处理看看:uniapp编译时报错找不到 main.js 的解决方法

这是一个典型的构建路径配置问题。从错误信息和截图来看,问题在于浏览器尝试从根路径加载 main.js,但实际文件位于 static/js/ 目录下。

主要原因: manifest.json 中的 h5 配置里,router.base 被设置为 /,但 publicPath 配置可能不正确或缺失,导致构建时资源路径计算错误。

解决方案:

  1. 检查并修改 manifest.json 文件: 打开项目根目录的 manifest.json,找到 h5 节点,确保 publicPath 配置正确。如果你的 H5 部署在网站根目录,配置应如下:

    "h5": {
        "router": {
            "base": "/"
        },
        "publicPath": "./",
        // ... 其他配置
    }
    

    如果部署在子目录(如 myapp/),则应为:

    "h5": {
        "router": {
            "base": "/myapp/"
        },
        "publicPath": "./",
        // ... 其他配置
    }
    
  2. 重新构建项目: 修改配置后,在 HBuilderX 中执行菜单【发行】->【网站-H5手机版】,重新生成 dist/build/h5 目录。

  3. 检查构建输出: 构建完成后,检查 dist/build/h5/index.html 文件,确认 main.js 的引用路径是否正确。正确路径应类似于:

    <script src="./static/js/main.js"></script>
回到顶部