7

在我的 javascript 中,我有一些专门用于调试的代码,我不想包含在实时站点中。有没有办法我可以半注释这些代码,以便它们正常运行为 javascript,但是 yui 压缩器认为它们是注释并删除它们?

例如

for(key in modules) {
  try { 
     MyApp[key].init(modules[key].params);
  } catch (e) {
     console.log("Module " + key + " threw an error");
     break;
  }
}

我希望能够在压缩部署到实时站点时自动注释掉 console.log 位。所以也许将代码包装在类似的东西中

   //yuiIgnore
         console.log("Module " + key + " threw an error");
   //endyuiIgnore
4

1 回答 1

8

具体到console.log语句:

我在启动压缩机之前使用sed替换"console"为:"//console"

sed -e "s/console/\/\/console/g" originalWithConsoleStatements.js > noConsoleStatements.js

该语句位于一个 shell 脚本中,然后启动压缩器。

于 2010-12-05T17:13:05.993 回答