我试着把我的web应用程序部署到heroku中,自从我添加了“emailjs”模块后,我就一直遇到这个问题。在那之前,我的部署工作得很好,现在我每次都遇到同样的问题。不管我怎么尝试。Heroku logs results after trying to deploy
这是我在index.js中代码:′
import React from 'react';
import ReactDOM from 'react-dom/client';
import './index.css';
import App from './App';
import reportWebVitals from './reportWebVitals';
const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(
<React.StrictMode>
<App />
</React.StrictMode>
);
reportWebVitals();
`
问题是:当我将“import”更改为“require”时,代码会向我抛出越来越多的错误。
**这是我包。
**
{
"name": "chipsi-puntos",
"version": "0.1.0",
"private": true,
"engines": {
"node": "18.12.1"
},
"dependencies": {
"@emailjs/browser": "^3.10.0",
"@testing-library/jest-dom": "^5.16.5",
"@testing-library/react": "^13.4.0",
"@testing-library/user-event": "^13.5.0",
"react": "^18.2.0",
"react-dom": "^18.2.0",
"react-router-dom": "^6.4.3",
"react-scripts": "5.0.1",
"sass": "^1.56.1",
"web-vitals": "^2.1.4"
},
"scripts": {
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": [
"react-app",
"react-app/jest"
]
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
}
}
如果你有任何建议,我会非常感谢〈3
我已经尝试了这里所写的所有解决方案:"Uncaught SyntaxError: Cannot use import statement outside a module" when importing ECMAScript 6
我还试图将“导入”切换为“要求”,但没有成功。
我希望我的代码能在heroku上运行良好。
Pd:它在我的本地主机上100%正常工作。
2条答案
按热度按时间c2e8gylq1#
我认为当你使用import语句时,你应该有“type”:“module”。由于您没有它,您应该使用require语句来代替。如果我是您,我会尝试将
"type": "module"
添加到package.json中。您也可以尝试调用标志:--experimental-modules
更多信息请点击此处
erhoui1w2#
您需要在
package.json
文件中添加"type": "module"
。更改您的index.js文件: