gpt4 book ai didi

javascript - 如何防止 smartgwt 污染窗口命名空间?

转载 作者:行者123 更新时间:2023-11-28 10:30:23 26 4
gpt4 key购买 nike

我在创建“日历”对象的项目中已有 javascript。该对象是window的成员。

当我将 smartgwt 添加到项目中时,原来的 Calendar 对象被 smartgwt 中打包的 smartclient 日历(ISC_Calendar)覆盖。

使用基于浏览器的 JS 调试器,我发现 smartgwt 中的所有 JS 对象都包含在 windowwindow.isc 中。我绝对不希望它们全部位于窗口级别,因为它们中的许多都有通用名称,例如日历。

在我的例子中,有问题的文件是 ISC_Calendar.js,在 gwt 编译后,它最终出现在 war/ /sc/modules 中。它调用以下行: isc.ClassFactory.defineClass("Calendar","Canvas","DataBoundComponent");

GWT编译位置:war/projectname/sc/modules/ISC_Calendar.js
jar位置:com.smartclient public/sc/modules/ISC_Calendar.js
源位置:找不到

我想我可以更改我正在使用的 jar 中的 javascript 文件,但这并不能真正解决更大的问题。我不想担心将来会遇到命名空间问题

最佳答案

您必须设置

var isc_useSimpleNames = false;

在加载任何 SmartClient 组件之前的脚本标记中。这样 SC 将仅在 isc.* 命名空间中注册类。

关于javascript - 如何防止 smartgwt 污染窗口命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3284447/

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