Почему мои куски Webpack не обновляются при изменении кода? - PullRequest
0 голосов
/ 17 апреля 2020

Когда я изменяю код в моих файлах, изменения не отражаются в чанках, сгенерированных версией Webpack 3.12.0.

Вот мой webpack.config

const path = require("path");

module.exports = {
  entry: {
    app_main: "./src/app-main.js",
    serviceworker: "./src/serviceworker.js"
  },
  output: {
    path: path.resolve(__dirname, "static/js"),
    filename: "[name].bundle.js",
    chunkFilename: "[name].bundle.js",
    publicPath: "/static/js/"
  },
  devtool: "inline-source-map"
};

Это основной js файл

const routes = [
    {
      uri: "/app/",
      module: "app-index"
    },
    {
      uri: "/app/list/",
      module: "app-list"
    }
  ],
  mountElement = document.querySelector("main");

const loadpath = (path, elm) => {
  let route = routes.find(r => r.uri === path);
  // console.log("loading", route);
  import(/* webpackChunkName: `${route.module}` */ `./${route.module}`).then(
    mod => (mountElement.innerHTML = mod.default())
  );
};

const addListener = (rootElm, sel, func) => {
  rootElm.addEventListener("click", e => {
    if (e.target.tagName.toLowerCase() === sel) {
      func(e);
    }
  });
};

document.addEventListener("DOMContentLoaded", e => {
  const path = location.pathname;

  loadpath(path, mountElement);

  addListener(document.querySelector("main"), "a", e => {
    console.log(e);
    history.pushState(
      {},
      e.target.pathname,
      location.origin + e.target.pathname
    );
    loadpath(e.target.pathname, mountElement);
    e.preventDefault();
  });
});

window.onpopstate = () => {
  loadpath(window.location.pathname, mountElement);
};

содержимое списка приложений. js файл

const render = () => `<a href="/app/list/">Link 1</a>`;
export default render;

содержимое индекса приложения. js файл

const render = () => `<a href="/app/">Go to app</a>`;
export default render;

Теперь, если я внесу простое изменение в app-index. js вроде

const render = () => `<a href="/app/list/">Link 2</a>`;
export default render;

Я вижу, что веб-пакет принимает изменение, у меня есть веб-пакет - работаю во время работы, я увидеть это в терминале

Hash: fb486c0672ca68904ab5
Version: webpack 3.12.0
Time: 22ms
      Asset     Size  Chunks             Chunk Names
9.bundle.js  1.36 kB       9  [emitted]  
 + 11 hidden assets
   [9] ./src/app-index.js 262 bytes {9} [optional] [built]
  [17] ./src lazy ^\.\/.*$ 160 bytes {10} [built]
    + 56 hidden modules

Но теперь, когда я перезагружаю страницу, изменений не видно, вывод не обновляется. Жесткая перезагрузка в Chrome, но ничего не происходит.

Чего мне не хватает?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...