求助:Snowpack始终无法找到/src/index.jsx文件
Snowpack开发服务404错误:无法找到/src/index.jsx排查方案
问题详情
迁移原生JS应用plasma到React项目时,启动Snowpack开发服务后持续触发404错误,提示无法找到/src/index.jsx。相关信息如下:
启动命令报错
:~/plasma$ npm run start > plasma@1.0.0 start > snowpack dev [14:33:25] [snowpack] Ready! [14:33:25] [snowpack] Server started in 55ms. [14:33:25] [snowpack] Local: http://localhost:8080 [14:33:25] [snowpack] Network: http://192.168.178.76:8080 [14:33:26] [snowpack] [404] Not Found (/src/index.jsx) ⠹ watching for file changes..
当前package.json配置
{ "name": "plasma", "version": "1.0.0", "description": "Converting a vanilla JS app (plasma) into React", "main": "index.js", "scripts": { "start": "snowpack dev", "build": "snowpack build", "test": "echo \"Error: no test specified\" && exit 1" }, "author": "author1", "license": "UNLICENSED", "dependencies": { "snowpack": "^3.8.8" }, // 曾尝试移除,目前保留 "snowpack": { "entrypoints": [ "src/index.jsx" ] } }
项目文件结构(不含node_modules)
~/plasma$ tree -I 'node_modules' . ├── index.html ├── package.json ├── package-lock.json ├── src │ ├── App │ │ ├── App.jsx │ │ └── index.js │ └── index.jsx └── style.css
已尝试修改index.html的脚本路径、更换文件后缀为.js,确认JSX文件代码编写正常,但问题未解决。
排查与解决步骤
添加React编译插件:Snowpack默认不支持JSX编译,需安装专用插件。执行:
npm install @snowpack/plugin-react --save-dev然后在package.json的
snowpack配置中添加插件:"snowpack": { "entrypoints": ["src/index.jsx"], "plugins": ["@snowpack/plugin-react"] }清理Snowpack缓存:缓存可能导致路径解析异常,执行:
npx snowpack clean再重新启动服务:
npm run start验证文件路径与大小写:Linux系统区分文件名大小写,确认
src/index.jsx文件名完全匹配,且文件权限为可读。调整index.html脚本路径:尝试将
<script type="module" src="./src/index.jsx"></script>改为<script type="module" src="src/index.jsx"></script>(去掉./)。修正package.json的main字段:将
"main": "index.js"改为"main": "src/index.jsx",确保入口文件指向正确。
内容的提问来源于stack exchange,提问作者nkwef3
相关产品推荐
相关产品推荐

