我在docker化的开发环境中将最新的VueJS与vue-cli-service一起使用。一切正常,除了在文件更改时通知vuejs / webpack之外。 (由于没有inotify。)它的工作方式与在OSX上完全一样。
我研究并发现了vue.js.config的configureWebpack选项,并启用了轮询功能,但是没有运气-在Windows下仍然无法运行。
这是我的docker-compose.yml,我的vuejs映像的Dockerfile和vue.config.js。其他任何人都可以在Windows下运行此设置,可能会看到我在做什么错了?
Dockerfile
FROM node:10.8.0-alpine
# Install Vue Cli via node
RUN npm install -g @vue/cli @vue/cli-service-global
RUN mkdir /src
WORKDIR /src
COPY ./src/package* /src/
RUN npm install
docker-compose.yml
version: '3'
services:
web:
build: './web'
volumes:
- /src/node_modules
- ./web/src:/src
working_dir: /src
ports:
- "4000:8080"
command: npm run serve
# stdin_open: true
# tty: true
api:
build: './api'
volumes:
- ./api/src:/src
working_dir: /src
ports:
- "3000:3000"
command: rails s
depends_on:
- data
# stdin_open: true
# tty: true
data:
build: './data'
volumes:
- data-postgresql:/var/lib/postgresql/data
ports:
- "5432:5432"
volumes:
data-postgresql:
external: true
vue.config.js
module.exports = {
configureWebpack: {
watchOptions: {
ignored: /node_modules/,
poll: 1000
}
}
}
答案 0 :(得分:1)
Solved. Finally. Thanks to a random example of a webpack config somewhere.
The vue.config.js watchoptions needs to be one more level down under "devServer". This seems to work:
vue.config.js
module.exports = {
configureWebpack: {
devServer: {
watchOptions: {
ignored: /node_modules/,
poll: 1000
}
}
}
}