Edit: Также проверьте JavaScript YUI3 using global variables?
Учитывая асинхронный характер JavaScript, в tabview
не обязательно оказывается перед тем alert()
называется на нем вне блока YUI. В этом случае «неопределенный» в поле предупреждения означает, что переменная была объявлена, но не назначена ни одному значению. Если переменная недоступна, alert()
потерпит неудачу из-за неотображенного «ReferenceError».
Так, пытаясь угадывать свое намерение, если вы хотите, чтобы исследовать объект TabView, вы можете захотеть использовать console.log()
вместо alert()
видеть вывод в консоли браузеров, и поместить его в блок YUI сразу после render()
:
var tabview;
YUI().use('tabview', function(Y) {
tabview = new Y.TabView({srcNode:'#demo'});
console.log(tabview); //defined
tabview.render();
console.log(tabview);
});
для того, чтобы использовать tabview
вне блока YUI, гарантировать, что он будет готов. В качестве быстрого примера:
Y.on("domready", function() {
console.log(tabview);
}