Create-React-App:未捕获错误:找不到模块" ./ locale"

时间:2017-10-11 15:58:59

标签: reactjs amazon-s3 create-react-app

我使用Create-React-App初始化了一个项目。

如果我......一切正常......

npm run start并查看http://localhost:3000

npm run build && serve -s build并查看http://localhost:5000

然而,在我使用...

部署到s3存储桶之后

npm run build && aws s3 sync build/ s3://${DEPLOYMENT_BUCKET}

...我转到s3网址并在控制台中出现此错误的空白屏幕:

  

未捕获错误:找不到模块" ./ locale"

我认为这可能与moment.js有关 - 虽然它不是我已经添加的依赖。

查看我的node_modules,我可以看到moment.js的版本是2.18.1,我认为它排除了this answer

我不确定如何调试此问题,所以任何帮助都会受到赞赏。

不知道这是否会有所帮助,但我目前的package.json如下所示。

{
  "name": "my_app",
  "version": "1.0.0",
  "private": true,
  "dependencies": {
    "amazon-cognito-identity-js": "^1.19.0",
    "antd": "^2.13.4",
    "axios": "^0.16.2",
    "react": "^15.6.1",
    "react-dom": "^15.6.1",
    "react-router-dom": "^4.2.2",
    "react-scripts": "1.0.13",
    "recompose": "^0.25.1"
  },
  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"
  }
}

2 个答案:

答案 0 :(得分:1)

安装蚂蚁设计依赖项以使用它时,我也面临相同的问题。我收到相同的错误消息

错误:找不到模块“ ./locale”

然后我安装一下矩,然后将其卸载,并且此错误也随之消失。

const myEl = this.el.nativeElement;

while(myEl.firstChild) {
  this.renderer.removeChild(myEl, myEl.lastChild);
}

答案 1 :(得分:0)

在查看react-scripts处理项目构建的方式之后,我在create-react-app附带的/react-scripts/config/webpack.config.prod.js文件中找到了这个有趣的代码片段(这是prod构建的Webpack配置文件)

// Moment.js is an extremely popular library that bundles large locale files
// by default due to how Webpack interprets its code. This is a practical
// solution that requires the user to opt into importing specific locales.
// https://github.com/jmblog/how-to-optimize-momentjs-with-webpack
// You can remove this if you don't use Moment.js:
new webpack.IgnorePlugin(/^\.\/locale$/, /moment$/),

您可能想要导入特定的语言环境,如果您使用任何语言环境,则看起来不是这样,否则请注释掉该行。