代码之家  ›  专栏  ›  技术社区  ›  MkMan

webpack4共享代码被复制,而不是加载一次

  •  0
  • MkMan  · 技术社区  · 4 年前

    我有下面的代码片段。

    // util.js
    
    const componentsList = {}
    
    export const addComponents = (componentsToAdd) => {
      componentsList = { ...componentsList, componentsToAdd };
    }
    

    例如,它在多个地方被使用

    // page1.js
    
    import { addComponents } from './utils'
    
    const page1Componens = ...
    
    addComponents(page1Componens );
    
    // page2.js
    
    import { addComponents } from './utils'
    
    const page2Componens = ...
    
    addComponents(page2Componens );
    

    在webpackv3中这很好,但由于我正在升级到webpackv4,它的行为并不像预期的那样。函数的每次调用 addComponents 拥有 componentsList 变量为空,因此并非所有组件都在加载。

    在我看来,功能没有被共享,因此导致了这种行为。

    有人能帮我一下如何让这台机器再次工作吗?

    谢谢

    0 回复  |  直到 4 年前