Reactjs Browserify找不到模块';react路由器dom';

Reactjs Browserify找不到模块';react路由器dom';,reactjs,docker,react-router,browserify,Reactjs,Docker,React Router,Browserify,我尝试使用react路由器,但无法使其与browserify一起工作。我被这个错误缠住了: events.js:182 throw er; // Unhandled 'error' event ^ Error: Cannot find module 'react-router-dom' from '/usr/src/app' at /usr/src/app/node_modules/browserify/node_modules/browser-resolve/

我尝试使用react路由器,但无法使其与browserify一起工作。我被这个错误缠住了:

events.js:182
      throw er; // Unhandled 'error' event
      ^

Error: Cannot find module 'react-router-dom' from '/usr/src/app'
    at /usr/src/app/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:46:17
    at process (/usr/src/app/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:173:43)
    at ondir (/usr/src/app/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:188:17)
    at load (/usr/src/app/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:69:43)
    at onex (/usr/src/app/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:92:31)
    at /usr/src/app/node_modules/browserify/node_modules/browser-resolve/node_modules/resolve/lib/async.js:22:47
    at FSReqWrap.oncomplete (fs.js:152:21)
npm info lifecycle irregular_verbs@1.0.0~start: Failed to exec start script
我的第一个js文件是
server.js
,它生成一个包来加载
app.js
。 我删除了app.js文件中的所有内容,以确保没有个人组件产生冲突。所以现在很轻了!但还是不行

我的app.js文件:

var React = require('react');
require('react-router-dom');
React.render(<div><p>Blop</p></div>, document.getElementById('base_ihm'));
react路由器安装得好吗?

my package.json文件的内容如下:

{
  "main": "server.js",
  "scripts": {
    "start": "node server.js"
  },
  "dependencies": {
    "express": "^4.13.3",
    "body-parser": "^1.15.2",
    "node-jsx": "^0.13.3",
    "react": "^15.6.1",
    "react-dom": "^15.6.1",
    "react-router-dom": "^4.0.0",
    "browserify": "^14.4.0",
    "reactify": "^1.1.1",
    "mysql": "^2.11.1"
  }
}
我使用
docker
docker-compose
。在我的Dockerfile上,我添加了
运行npm ls
运行ls节点\u模块
:我可以看到
反应路由器
反应路由器dom
。所以这里有很多

是否有docker缓存?

我重新命名我的图像,以确保使用的是好的,而不是旧的。 我还使用
docker compose up--force recreate
重新启动容器。 所以我想这是可以的

Erreur与server.js一起使用,其中使用了browserify

我想我在server.js文件中犯了一个错误,但我不知道。。。 以下是我尝试过但没有成功的方法:

  • 我尝试在我的转换('reactify')中添加一个global:true然后global:false
  • 在Dockerfile中,我尝试添加
    npm install react router dom-g
    ,以确保它已安装
  • 我终于升级了我的版本。还尝试在版本4.1.1中使用react路由器dom
  • 我将
    require('react-router-dom')
    替换为
    require('./node\u modules/react-router-dom')
    ,但得到相同的错误(除了找不到新路径)
  • 你知道吗?
    谢谢你的帮助

    很抱歉回答晚了。这最终是一个码头工人的问题

    即使使用
    docker compose up--force recreate
    ,旧图像仍然被使用

    我在docker-compose.yml文件中重命名了我的容器,因此在下一个开始时,它使用新图像创建了一个新容器

    {
      "main": "server.js",
      "scripts": {
        "start": "node server.js"
      },
      "dependencies": {
        "express": "^4.13.3",
        "body-parser": "^1.15.2",
        "node-jsx": "^0.13.3",
        "react": "^15.6.1",
        "react-dom": "^15.6.1",
        "react-router-dom": "^4.0.0",
        "browserify": "^14.4.0",
        "reactify": "^1.1.1",
        "mysql": "^2.11.1"
      }
    }