如何正确移动 node_modules 到不同的位置

How to move node_modules to a different location correctly

我正在尝试将我的 node_modules 移动到另一个位置,我所做的是删除 node_modules 并将 package.json 移动到我想要安装它的位置,然后我 运行 npm install 在我想要的地方安装了 node_modules 但现在,如果我 运行 npm start,服务器启动并且我得到很多错误:

(index):5 GET http://localhost:3000/node_modules/bootstrap/dist/css/bootstrap.min.css 
(index):9 GET http://localhost:3000/node_modules/es6-shim/es6-shim.min.js 
(index):10 GET http://localhost:3000/node_modules/systemjs/dist/system-polyfills.js 
(index):12 GET http://localhost:3000/node_modules/angular2/bundles/angular2-polyfills.js 
(index):13 GET http://localhost:3000/node_modules/systemjs/dist/system.src.js 
(index):14 GET http://localhost:3000/node_modules/rxjs/bundles/Rx.js 
(index):15 GET http://localhost:3000/node_modules/angular2/bundles/angular2.dev.js 
(index):16 GET http://localhost:3000/node_modules/angular2/bundles/http.dev.js 
(index):21 Uncaught ReferenceError: System is not defined(anonymous function) @ (index):21

我更新了 index.html 文件以使用根目录 node_modules 中的文件而不是当前目录的 node_modules.

我还应该做些什么才能让它发挥作用?

请注意 index.html 与 node_modules

的目录不同

解决方法如下:

  1. 在你有 package.json 文件的同一目录下创建 bs-config.json 文件
  2. 将以下 json 放入 bs-config.json 文件中:

    { "server":{ "baseDir": "path/to/your/base/dir/where/you/have/the/index.html/of/your/app", "routes":{ "/node_modules": "/path/to/node/modules/relatively/to/this/file" } } }

  3. 编辑您的 package.json 文件 "lite": "lite-server --c bs-config.json"

  4. 运行 npm start 它会像魔法一样工作 :D