Javascript 文件、子文件的网页包加载程序,并将其添加到跟踪列表

Javascript 文件、子文件的网页包加载程序,并将其添加到跟踪列表,javascript,node.js,webpack,webpack-dev-server,webpack-loader,Javascript,Node.js,Webpack,Webpack Dev Server,Webpack Loader,我在第三方应用程序中创建了map+tilemap项目。整个项目是一组文件,主文件(XML)表示2D游戏级地图,其他一些文件(子文件)表示图形和瓷砖贴图 我正在尝试创建一个Webpack加载器,它将编译整个map/tilemap项目并将其转换为JSON对象,在javascript中使用起来非常方便。我仍然不知道如何: 如何访问子文件(从主文件的相对路径获取)、访问当前目录(主文件所在的目录)的方式以及主文件的名称 我如何向Webpack解释跟踪所有子文件中的更改,以便它再次自动运行加载程序来编译

我在第三方应用程序中创建了map+tilemap项目。整个项目是一组文件,主文件(XML)表示2D游戏级地图,其他一些文件(子文件)表示图形和瓷砖贴图


我正在尝试创建一个Webpack加载器,它将编译整个map/tilemap项目并将其转换为JSON对象,在javascript中使用起来非常方便。我仍然不知道如何:

  • 如何访问子文件(从主文件的相对路径获取)、访问当前目录(主文件所在的目录)的方式以及主文件的名称

  • 我如何向Webpack解释跟踪所有子文件中的更改,以便它再次自动运行加载程序来编译整个map/tilemap项目(部分重新打包)

  • 我花了2天的时间来寻找任何可行的解决方案,有可能吗


    非常感谢

    对于第一个问题,webpack loader是通过
    公开文件信息的,您可以这样做:

    module.exports=函数(源){
    const loaderContext=此;
    const{sourceMap,rootContext,resourcePath}=loaderContext;
    const sourceRoot=path.dirname(path.relative(context,resourcePath));
    ...
    }
    
    对于第二个问题,我认为您可以使用
    模块.hot
    跟踪子文件的更改,如下所示:

    if(模块热){
    module.hot.accept('filepath',()=>{
    ...
    })
    }
    
    “我正在尝试创建一个网页包加载器,它将编译整个map/tilemap项目并将其转换为JSON对象”。你为什么要用加载器呢?加载程序处理导入依赖关系图。也许插件是更好的选择。