[英]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.