webpack里打包的时候怎么修改代码

发布于 2022-09-04 23:19:28 字数 922 浏览 13 评论 0

plugins: [
    {
      name: 'js-parser',
      test: /main\.js/,
      fn: function (source) {
        str = `[${str.join(',\n')}]`
        source = source.replace('const routes = []', 'const routes = ' + str)
        return source
      
    },

例如类似上面的代码我应该怎么写
用的vue-cli webpack
webpack打包的时候,我希望替换掉指定文件里的代码,怎么实现!不会弄啊!

需求:
1.我做了app,然后需要把里面的域名替换成客户的,本地的话也要正常,我需要测试开发
yarn run build --url=http://www.baidu.com
这一步目前还不知道怎么让package.json的scripts的"build": "node build/build.js --url(这里不会写接收,没查到, 有的说--$URL但是不行)",接收url参数
2.const argv = require('yargs').argv用这个我接收网址参数
3.source = source.replace('http://127.0.0.1/index.php', argv.url)
第三步不知道怎么实现(vux-load是写插件,然后替换的,我想知道不写插件webpack支持替换源代码吗)
这只是其中一个需求,我就是想用命令来生成不同的app

如果单独写一个文件,然后写这些变量引入似乎也可以,不过没命令直接

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

热风软妹 2022-09-11 23:19:28

为什么要这么做呢?

直接吧 routes 写在源码里,然后根据不同的环境加载不同的文件。

使用 Webpack ENV

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文