【问题标题】:Partially skip sections with Google Closure Compiler使用 Google Closure Compiler 部分跳过部分
【发布时间】:2012-05-05 21:20:40
【问题描述】:

我正在服务器上生成一个 javascript,并希望运行 Google Clousure Compiler 以在脚本的 php 源代码上运行。

var jsvar = <?=$var ? true : false ?>;

如果有什么方法可以告诉编译器跳过 ?就像一个正则表达式跳过:

/<\?=.*?\?>/

最好的问候,

尼古拉斯

【问题讨论】:

    标签: google-closure-compiler


    【解决方案1】:

    我发现当我将客户端 JavaScript 与服务器端逻辑分开时,我的代码更容易维护。现在我编写脚本,以便我的服务器端处理发出初始化变量。

    示例 - 服务器端:

    <?php echo 'var mynamespace = {}; mynamespace.jsvar = "' . $var . '";'; ?>
    

    在我的客户端javascript中:

    var mynamespace = window['mynamespace'] || {};
    function MyFunction() {
      alert(mynamespace['jsvar']);
    }
    MyFunction();
    

    使用这种风格,我的客户端 javascript 可以使用 Closure-compiler 轻松编译。

    【讨论】:

      【解决方案2】:

      你可以这样做:

      var jsvar = eval("<?=$var ? true : false ?>");
      

      编译器不会触及字符串的内容。

      【讨论】:

        猜你喜欢
        • 2015-10-25
        • 1970-01-01
        • 2019-09-27
        • 1970-01-01
        • 1970-01-01
        • 2010-12-14
        • 1970-01-01
        • 2014-10-15
        • 2011-05-12
        相关资源
        最近更新 更多