繁体   English   中英

Javascript YUICompressor错误

[英]Javascript YUICompressor error

使用YUICompressor,我的javascript代码出现以下错误:

[ERROR] 270:201:missing name after . operator
    [ERROR] 292:6:missing ; before statement

这是以下行中的javascript代码:

第270行:

new _ow.getScript(_ow.wwwurl+'/widget/save?title='+encodeURIComponent(this.obj.title.value)+'&url='+encodeURIComponent(this.obj.url.value)+'&tags='+this.obj.tags.value+'&private='+this.obj.private.checked+'&c='+this.obj.notes.value+'&service='+services+'&token='+(_ow.token ? encodeURIComponent(_ow.token): ''), function(data) {

第292行:

});

我无法弄清楚问题出在哪里,因为此Javascript代码在所有浏览器上都能正常工作。


编辑 :我将行拆分为多行,并找出此代码生成“。运算符后缺少名称”:

this.obj.private.checked

private是使YUI压缩器发疯的关键字吗?

首先,我将重新格式化代码以使其更具可读性:

new _ow.getScript(_ow.wwwurl
    + '/widget/save?title='
    + encodeURIComponent(this.obj.title.value)
    + '&url='
    + encodeURIComponent(this.obj.url.value)
    + '&tags='
    + this.obj.tags.value
    + '&private='
    + this.obj.private.checked
    + '&c='
    + this.obj.notes.value
    + '&service='
    + services
    + '&token='
    + (_ow.token
        ? encodeURIComponent(_ow.token)
        : ''),
    function(data) {
    });

然后,压缩机报告的行号应该可以帮助您深入了解问题所在。

请记住使用选项--type js ex。

yuicompressor --type js -o comressed.js filetocompress.js

您可以下载并安装apache ant,下载yui源代码,编辑源代码(在src文件夹中,在org和com子文件夹中),以删除对阻止进度的关键字的所有引用(运行速度非常快,我编辑了约3到4个文件,我认为必须运行ant两次,因为第一次遇到参考错误,但是只需要删除引用关键字的另一行即可),一旦ant编译成功,您将拥有一个全新的.jar,您可以使用它编译有问题的js。 使用yuicompressor2-4.7和“ import”关键字(在mozilla扩展代码中广泛使用)完成了此操作

您可以将自己的生活分解成多行,从而使自己的生活更加轻松。 无论如何,您都在压缩它,所以这并不希望最终尺寸有所不同...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM