google closure compiler and jquery

只谈情不闲聊 提交于 2019-12-03 12:11:29

问题


I copy-pasted my js code into the google compiler and when I copied it back into my application it didn't work. I realized that my code needs jquery so I copied the jquery code and my code into the google compiler, hoping it would easily solve the problem, but it doesn't work either.

In chrome, the code bugs on the line $(document).K(function () { which is the document ready function. The error is Uncaught TypeError: Object [object Object] has no method 'K'

What do I need to do to make it (tentatively) work?

Thanks for your suggestions.


回答1:


Use@externs_url to "import" symbols in Google's Closure compiler:

// @externs_url https://raw.githubusercontent.com/google/closure-compiler/master/contrib/externs/jquery-1.9.js

I recommend to use one of the externs as defined in contrib/externs, which only includes the names of all methods.

Example

// ==ClosureCompiler==
// @compilation_level ADVANCED_OPTIMIZATIONS
// @externs_url https://raw.githubusercontent.com/google/closure-compiler/master/contrib/externs/jquery-1.9.js
// ==/ClosureCompiler==
$(document).ready(function(){alert(0);});  // Input

Output:

$(document).ready(function(){alert(0)});


来源:https://stackoverflow.com/questions/9592534/google-closure-compiler-and-jquery

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!