【问题标题】:Replacing values inside JavaScript using ANT使用 ANT 替换 JavaScript 中的值
【发布时间】:2016-10-21 18:56:36
【问题描述】:

我有一个由<script> 标签组成的 HTML 页面,如下所示

<script type="text/javascript">
   window.location ="THIRD PARTY URL"
</script>

以上代码运行正常。
现在我的要求是:在部署期间将此第三方 URL 的值从一个环境更改为另一个环境。
此第三方 URL 在 DEV 环境、UAT 环境和生产环境中会有所不同。

我不想在每次将 EAR 部署到我的 Weblogic 服务器之前手动更改此值。相反,我正在寻找一些可以执行此任务的脚本。

我知道使用 ANT 脚本可以做到。
但我无法弄清楚我的案例所需的 build.xml 的确切配置。

我已经浏览过stackoverflow中的以下链接:

ANT replacing strings in specified files using file with properties

有没有人可以解决这个问题?

【问题讨论】:

    标签: javascript ant


    【解决方案1】:

    最简单的解决方案是替换正则表达式。

    <replaceregexp file="test.html" match="window.location(.*)" replace="window.location=&quot;${MYURLVALUE}&quot;" byline="true"/>
    

    这里的文件指定你的 html 文件。我们将键和值作为正则表达式进行匹配。注意替换参数中的&amp;quot;。这是为了确保您的 URL 结果包含在引号内。

    【讨论】:

      【解决方案2】:

      我会向您建议一些不同的解决方案。 有一个文件:

         // setup.js
         var url = "THIRD_PARTY_URL";
      

      您的主文件将包含:

      <script type="text/javascript" src="setup.js"></script>
      <script type="text/javascript">
         window.location = url;
      </script>
      

      在部署期间,您必须为给定环境复制正确的 setup.js。我认为,这比修改文件要干净一些。如果需要,通过这种方法,您实际上可以为环境提供更多配置选项。

      【讨论】:

        猜你喜欢
        • 2020-06-15
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2015-09-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多