webpack-dev-serve的路径问题

假如我的目录结构是这样:

src
 +css
 -js
   --entry1.js
   --test.json
 index.html

然后我以src为根目录,启动了webpack-dev-server本地服务器
config配置是这样的:

    entry: {
        index: ['../src/js/entry1.js']
    },
   output: {
        path: path.resolve(__dirname, '../dist'), //没用?
        publicPath: '/assets/',
        filename: 'js/[name].js'
    },

问题一:这里path: path.resolve(__dirname, '../dist')貌似完全没有用
打开localhost服务器地址,发现路径是以publickPath为基准,入口文件引入的entry1.js输出后的路径是:

localhost:8080/assets/js/index.js


问题二:webpack-dev-server本地服务器端的实际完整结构是?

然后我在entry1.js里get那个js文件夹下的json文件:

$.get('js/test.json', function(data) {
    console.log(data.msg);
});

然后发现test.json是在localhost:8080/js/test.json路径被加载的
也就是说src文件夹下的原本的内容也都被webpak-dev-server服务器保留了

那么webpack-dev-server服务器的实际目录结构是下面这样?

src(根目录,也就是localhost:8080)

/*在内存中输出后的内容*/
 -assets/js
  --index.js

/*原本有的内容*/
 +css
 -js
   --entry1.js
   --test.json
 index.html

但是打开localhost:8080页面只能看到如下结构:

src(根目录,也就是localhost:8080)

/*在内存中输出后的内容*/
 -assets/js
  --index.js
 index.html
阅读 6.8k
2 个回答
新手上路,请多包涵

问题一:这里path: path.resolve(__dirname, '../dist')貌似完全没有用

dist文件夹放在哪里? 在SRC之外的话,SRC是根目录,自然找不到dist

应该在src上层目录执行

目录结构大概是这样子
--src
--dist
--webpack-dev-server.js

在这个层级,运行webpack-dev-server才能找到dist,
path: path.resolve(__dirname, "dist")

新手上路,请多包涵

请问publicPath改了之后,如何实现CSS里面的背景图片的路径问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题