gpt4 book ai didi

JavaScript YUI3 全局变量

转载 作者:行者123 更新时间:2023-11-28 02:00:48 25 4
gpt4 key购买 nike

我正在使用YUI3 TabView component格式如下:

var tabview;
YUI().use('tabview', function(Y) {
tabview = new Y.TabView({srcNode:'#demo'});
alert (tabview); //defined
tabview.render();
});
alert (tabview); //undefined

但是,当我尝试在其声明函数之外访问变量 tabview 时,出现该对象未定义的异常。你能告诉我我错过了什么吗?

最佳答案

编辑:另请检查 JavaScript YUI3 using global variables?

考虑到 JavaScript 的异步特性,在 YUI block 之外调用 alert() 之前,tabview 不一定会呈现。在这种情况下,在警报框中看到“未定义”意味着该变量已被声明但未分配任何值。如果该变量不可访问,alert() 将因未捕获的“ReferenceError”而失败。

因此,在尝试猜测您的意图时,如果您想检查 tabview 对象,您可能需要使用 console.log() 而不是 alert()在浏览器控制台中查看输出,并将其放在 render() 之后的 YUI block 中:

var tabview;
YUI().use('tabview', function(Y) {
tabview = new Y.TabView({srcNode:'#demo'});
console.log(tabview); //defined
tabview.render();

console.log(tabview);
});

为了在 YUI block 之外使用 tabview,请确保它已准备就绪。举个简单的例子:

Y.on("domready", function() {
console.log(tabview);
}

关于JavaScript YUI3 全局变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18461416/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com