请问怎么写一个webpack的运行啊?

作者站长头像
站长
· 阅读数 16

因为每个电脑的启动器和源码都不是固定的硬盘,现在 在webpack.config.js 中的context 是每个成员单独配置的。

我写了一个异步函数获取位置。但是 在config.js 里面不知道怎么用await之后module.exports

有两个想法,一个是在a.ts 中执行webpack,然后运行 ts-node a

import {webpack} from 'webpack';
import customConfig from './customConfig';
(async ()=>{
    let config =  await customConfig()
    webpack(config)
        .run(()=>{
            console.log('its workout')
               //...
        })
})()

第二个想法是处理掉异步导出的问题

// webpack.config.js
const customConfig = require ('./customConfig');
module.exports = (async ()=>{
    return await customConfig()
})()

第一个没报错,但是啥也没有。进程也没结束,控制台也没有输出,dist目录也没有产出。第二个报错 Failed to load '..\webpack.config.js' config

请问大伙有啥办法不?

能保证的是,把customConfig()的内容打印出来放到 webpack.config.js里面的话,可以用 webpack -c webpack.config.js执行成功。

回复
1个回答
avatar
test
2024-07-16

在 build.js 里写异步操作,结果 fs.writeFileSync 写入到项目,到启动的时候直接用:

"scripts": {
    "getCustomConfig": "node build.js",
    "serve": "npm run getCustomConfig && 启动命令",
    "build": "npm run getCustomConfig && 打包命令"
  }
回复
likes
适合作为回答的
  • 经过验证的有效解决办法
  • 自己的经验指引,对解决问题有帮助
  • 遵循 Markdown 语法排版,代码语义正确
不该作为回答的
  • 询问内容细节或回复楼层
  • 与题目无关的内容
  • “赞”“顶”“同问”“看手册”“解决了没”等毫无意义的内容