我已经用Preact写了一个非常简单的应用程序。没有后端服务器,只有前端调用web API并显示结果。
我在Heroku上设置了它,它报告它部署成功,但尝试访问应用程序失败了:
2020-09-14T02:10:11.845503+00:00 heroku[web.1]: Starting process with command `npm start`
2020-09-14T02:10:14.403769+00:00 app[web.1]: npm ERR! missing script: start我应该如何定义一个start脚本来使其工作?
在开发中,我按照Preact文档的建议运行yarn dev。我的猜测是这只是一个开发服务器。
顺便说一句,这是我的package.json
{
"private": true,
"name": "clips-preact",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"build": "preact build",
"serve": "sirv build --port 8080 --cors --single",
"dev": "preact watch",
"lint": "eslint src"
},
"eslintConfig": {
"extends": "eslint-config-synacor"
},
"eslintIgnore": [
"build/*"
],
"devDependencies": {
"eslint": "^6.0.1",
"eslint-config-synacor": "^3.0.4",
"preact-cli": "^3.0.0",
"sirv-cli": "^1.0.3"
},
"dependencies": {
"axios": "^0.20.0",
"preact": "^10.1.0",
"preact-render-to-string": "^5.1.2",
"recoil": "^0.0.10"
}
}发布于 2021-03-14 17:03:19
我来晚了,但对于遇到这种情况的人来说,您根本不应该运行单独的服务器。
将CLI构建准备到静态输出。只需将您的let服务器(nginx、apache)指向该目录,并让它处理文件服务。
发布于 2020-09-15 08:44:40
试一试:
{
"private": true,
"name": "clips-preact",
"version": "0.0.0",
"license": "MIT",
"scripts": {
"build": "preact build",
"serve": "sirv build --port 8080 --cors --single",
"dev": "preact watch",
"lint": "eslint src",
// Your file name ↓ make sure to remove this comment before you go.
"start": "node index.js"
}您必须在“脚本”区域中添加"start“,然后在运行脚本时键入"node your_file_name”,这将使"npm start“命令运行"node your_file_name”命令。
https://stackoverflow.com/questions/63885935
复制相似问题