问题标签 [google-closure-library]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
547 浏览

google-closure-library - depswriter.py 抱怨“命令行太长”

我尝试在 Windows 7 中使用 'closure-library\closure\bin\build\depswriter.py' 创建 deps.js 文件。我的 python 版本是 2.7.3。它抱怨“命令行太长”。

它在 Linux 中运行良好。

使其在Windows中工作的任何解决方案。

0 投票
2 回答
1210 浏览

unit-testing - 使用带有 jsTestDriver 的闭包库

我正在通过编写一个简单的 JavaScript 游戏来学习谷歌关闭工具。我无法弄清楚如何设置 jsTestDriver 以便它与闭包库一起工作。

具体来说:我想使用 goog.require 机制来包含任何额外的 JavaScript 文件,而不是必须手动将它们全部添加到配置文件中。

按照 meyertee 的建议,我制作了一个简单的脚本来自动将依赖项写入配置文件

tests/jsTestDriver.conf.proto 文件是一个简单的模板:

这是一个非常脆弱的脚本,但希望有人(除了我)会发现它有用。

0 投票
1 回答
5767 浏览

google-closure-compiler - Google 闭包变量 window/event/console/... 是未声明的错误

我正在尝试使用 Google Closure 编译我的 HTML5 项目之一。我收到了几个我不知道如何解决的错误。实际上,这是相同的错误,但对于不同的变量。

这里的错误消息:

变量窗口未声明变量事件未声明变量控制台未声明变量音频未声明

这些变量是 Javascript 内置变量。如果我直接在命令行中编译同一个项目,它就可以工作。但是,就我而言,我需要使用 ant 文件(构建过程)来编译这个项目。我的 ant 构建脚本使用的 jar 文件与我在命令行中使用的相同。使用选项 warnings="verbose",它不起作用。如果我删除它,它会起作用。如果我想使用选项警告-“详细”,我必须做什么?请解释我的区别。

有人可以帮我吗?谢谢!

0 投票
1 回答
701 浏览

google-closure-library - Why can't I call goog.require() in the same code block in which I call a function from the loaded library?

Here is my html.

And here is my hello.js file.

Why does Chrome Console issue this error?

In general, I don't think I can require a library in the same code block in which I call a function from the library. I just saw this in the documentation, but I was wondering why.

0 投票
2 回答
1241 浏览

javascript - 在 javascript 中为公共回调函数安全地定义变量

我正在使用 YouTube iFrame API 在页面上嵌入许多视频。此处的文档:https ://developers.google.com/youtube/iframe_api_reference#Requirements

总之,您可以使用以下代码段异步加载 API:

加载后,API 会触发预定义的回调函数onYouTubePlayerAPIReady

有关其他上下文:我在 Google Closure 中为此定义了一个库文件。我提供了一个命名空间:goog.provide('yt.video');

然后我使用goog.exportSymbol以便 API 可以找到该函数。这一切都很好。

我的挑战是我想将 2 个变量传递给回调函数。如果不在对象的上下文中定义这两个变量,有什么方法可以做到这一点window

};

为了初始化这一点,我目前在自执行匿名函数中使用以下内容:

0 投票
4 回答
90752 浏览

javascript - 如何找出在 Chrome 控制台中按下按钮时调用了哪些函数?

我正在尝试自学 Google Closure javascript 库。我正在检查 TreeControl UI 小部件。

我如何使用 Chrome 控制台来分析当我在下面的演示中单击“剪切”按钮时运行了哪些功能?例如,我可以为此设置一个断点吗?我已经尝试查看源代码并环顾四周,但我觉得 Chrome 控制台可能会提供更系统的方法。

https://github.com/google/closure-library/blob/master/closure/goog/demos/tree/demo.html

0 投票
1 回答
794 浏览

javascript - 闭包库在窗格之间拖动一个 goog.fx.DragListGroup 项

我目前正在使用 google 闭包库,但遇到了问题。我尝试在自己的选项卡上使用多个 DragListGroups。但现在我想在这些列表之间进行拖放,并尝试在选项卡之间进行拖动。

我的想法是让选项卡栏中的按钮可放置,这样我就可以将项目拖到页面的选项卡按钮上,页面被选中,我可以将元素放在我想要的位置。

遗憾的是 DragListGroup 无法添加不是 DragListGroups 的目标。

有人能帮我一下吗?这是我的代码: http: //pastebin.com/r2iywr9j 这是css文件: http: //pastebin.com/EBFdNhgS

0 投票
2 回答
1078 浏览

google-closure-library - 如何禁用 goog.ui.Dialog 中的关闭按钮?

我想去掉 Google Closure 对话框右上角的关闭/X 按钮。

我正在浏览文档(http://closure-library.googlecode.com/svn-history/r8/trunk/closure/goog/docs/class_goog_ui_Dialog.html)并且找不到这样做的方法。

0 投票
1 回答
115 浏览

javascript - 为什么创建侦听器会因在 Google Closure 中产生内存泄漏而臭名昭著?

这篇关于内存泄漏的文章强调,拥有多余的事件侦听器会导致 Google Closure javascript 库中的内存泄漏。

http://www.googleclosure.com/avoid-memory-leaks-with-goog-disposable/

为什么要特别注意事件监听器?

0 投票
3 回答
5097 浏览

javascript - 为什么除了 `goog.inherits()` 之外还需要`goog.base(this)`?

在这个涉及构造函数的 Google Closure javascript 代码片段中,为什么goog.base(this);需要?还没有Foo从 Disposable with 继承goog.inherits(foo, goog.Disposable);