停止智能客户端添加Array类元素到我的数组
Stop Smart Client from adding an Array class element to my arrays
我目前正在工作中构建一个项目,需要我拉入一系列对象,并将它们钉在地图上。
我将我的标记存储在一个数组中,这样当用户搜索不同的条件时,我可以重置映射。
这一切都工作完美,直到我包括Smart Client
。
我不太熟悉Smart Client
,但它似乎是添加一个Array
类对象到我的数组,从而打破我的for循环。
var wrap = (function() {
var arr;
function myFunc(a) {
for (var i in arr)
arr[i] = null; //doing this to set all markers to null
}
arr = [];
for (var i in a) {
arr.push(a[i]);
}
}
return {
doSomething: function(a) { myFunc(a); }
}
})();
wrap.doSomething([1,2,3,4]);
wrap.doSomething([1,2,3,4]);
这给了我一个TypeError: undefined is not a function
错误。
smartclient库,smart gwt。我包含了以下文件:
<script>var isomorphicDir = "/smartclient/isomorphic/";</script>
<script src="/gmap/smartclient/isomorphic/system/modules/ISC_Core.js"></script>
<script src="/smartclient/isomorphic/system/modules/ISC_Foundation.js"></script>
<script src="/smartclient/isomorphic/system/modules/ISC_Containers.js"></script>
<script src="/smartclient/isomorphic/system/modules/ISC_Grids.js"></script>
<script src="/smartclient/isomorphic/system/modules/ISC_Forms.js"></script>
<script src="/smartclient/isomorphic/system/modules/ISC_DataBinding.js"></script>
<script src="/smartclient/isomorphic/skins/Enterprise/load_skin.js"></script>
无论在我自己的js之前或之后初始化这些文件,我仍然得到相同的错误。
我是开放可行的替代方案,提供一个更好/更干净的解决方案,以产生大型的,动态排序和可分组的表,在javascript
我也不熟悉智能客户端,但是你的代码中有一个问题应该可以解释TypeError。wrap
变量被设置为IIFE(从第1行开始的函数)的返回值。因为它不返回任何东西,所以wrap将是未定义的。doSomething
只是IIFE的一个局部函数,所以你不能在IIFE之外调用它。
另外,示例代码中的花括号似乎有问题?与}
相比,{
多了一个…
假设您使用花括号纠正了问题,您可以通过在换行IIFE的末尾(在最后一个for循环之后)添加以下内容来消除它:
return {
doSomething: doSomething
};
将对象赋值给wrap
变量
相关文章:
- JQuery添加元素需要在我的js之前再次添加JQuery脚本
- 元素在我的代码中不会.fadeTo.Don'I don’我不知道;s错误的JavaScript、JQuery、H
- 是否有任何可能的原因使我应该指定类型=“”;按钮“;用于我的按钮元素
- jQuery-将列表项的一个元素移动到同一项的另一个元素中+对我的列表中的每个项执行此操作
- Angular没有根据模型更新我的选择元素
- 我想将链接关联到动态创建的p元素上的相应文章
- I'我试图在我的网页上动态地上下移动元素.我该怎么做
- 我想隐藏/显示我的SVG元素,同时在anguarJS中使用它
- 我的ID获取元素不起作用
- setInterval 仅在我的 5 个元素中的 4 个上运行
- 我应该如何从我的javascript中引用DOM元素
- 为什么当我分配给element.style时,我的元素的样式没有改变
- 火虫找到隐藏我的元素的脚本
- 为什么动画完成后我的元素不再隐藏
- 当我单击chrome的输入类型=搜索元素上的X时,是否触发了任何事件
- 如何使用“;点击“;在创建我的元素之前
- Javascript似乎并没有取消隐藏我的元素
- 在 Rails 表单中,如何使用 Jquery 隐藏和取消隐藏表单元素?我的脚本不起作用
- AngularJS:如何判断我的控制器是否绑定到我的ng-repeat指令元素?我的数据没有显示
- 如何使用参数对象从数组中删除元素-我的代码有什么问题