搜索

首页  >  问答  >  正文

使用webpack加载目录中的所有文件,无需使用require语句的方法

<p>我有大量的javascript文件分散在我的应用程序的4个子目录中。在grunt中,我将它们全部收集起来并编译成一个文件。这些文件没有module.exports函数。</p> <p>我想使用webpack将它们分割成4个部分。我不想手动去引用所有的文件。</p> <p>我想创建一个插件,在编译时遍历目录树,然后获取所有的.js文件名和路径,然后引用子目录中的所有文件并将其添加到输出中。</p> <p>我希望每个目录中的所有文件都编译成一个模块,然后可以从我的入口文件中引用,或者包含在http://webpack.github.io/docs/plugins.html中提到的资源中。</p> <p>当添加一个新文件时,我只想将其放入正确的目录中,并知道它将被包含。</p> <p>是否有一种方法可以使用webpack或者其他人编写的插件来实现这个?</p>
P粉252423906P粉252423906517 天前520

全部回复(2)我来回复

  • P粉245003607

    P粉2450036072023-08-23 12:36:39

    在我的应用文件中,我最终放置了require

    require.context(
      "./common", // 上下文文件夹
      true, // 包括子目录
      /.*/ // 正则表达式
    )("./" + expr + "")

    感谢这篇帖子:https://github.com/webpack/webpack/issues/118

    现在它正在添加所有我的文件。我有一个用于html和css的加载器,看起来工作得很好。

    回复
    0
  • P粉351138462

    P粉3511384622023-08-23 09:52:27

    这是我为了实现这个目标所做的:

    function requireAll(r) { r.keys().forEach(r); }
    requireAll(require.context('./modules/', true, /\.js$/));

    回复
    0
  • 取消回复