私は、エクスプレスおよびデフォルトのvue-webpack-boilerplateを使用したフルスタックアプリケーションを使用しています。私のプロジェクト構造は次のようになります:
├── client
│ ├── build
│ │ └── ...
│ ├── config
│ │ └── ...
│ ├── dist
| | └── ...
│ ├── index.html
│ ├── src
│ │ ├── App.vue
│ │ ├── assets
│ │ │ └── ...
│ │ ├── components
│ │ │ └── ...
│ │ ├── main.js
│ │ └── router
│ └── static
├── node_modules
├── package.json
└── server
├── app.js
├── bin
│ └── www
└── routes
└── ...
$ node client/build/dev-server.js
を実行すると、次のエラーが表示されます。
ERROR Failed to compile with 2 errors
These relative modules were not found:
* ./build/dev-client in multi ./build/dev-client ./src/main.js
* ./src/main.js in multi ./build/dev-client ./src/main.js
しかし、クライアントフォルダーから実行しようとした場合にのみ、正しく動作します。
$ cd client
$ node build/dev-server.js
助言がありますか?
これは相対パスのエラーです。クライアントフォルダーではなく、新しいルートフォルダーを基準にして、require()
で使用されているパスを除くすべてのパスを変更する必要があります。 path.diranme()
メソッドと同じ__dirname
を使用することをお勧めします。チェック this 。