繁体   English   中英

为CQ5中的Sidekick和Insert对话框动态定义组件列表

[英]Define component list dynamically for Sidekick and Insert dialog in CQ5

我正在尝试根据用户的权限修改显示在同伴中的组件列表。 我正在按照这里的说明进行尝试。

我想知道的是如何发回作为参数接收的修改后的允许数组,因为我对数组所做的任何修改似乎都在本地范围内。 例如,如果我希望允许的组件仅包含默认列表组件,则可以执行以下操作。

function MyHandler(cell, allowed, componentList) {
    allowed = [];
    allowed.push("/libs/foundation/components/list");
}

但是一旦控件返回触发该事件的功能,这些更改就将不可见。 我应该返回数组还是其他东西? 您能否解释一下我是否在这里缺少什么?

好。 终于想到了问题。 我想清除传递给处理程序的现有组件列表,为此我使用了allowed = [];

这将删除对允许数组的所有现有引用。 (有关此内容的更多信息,请参见此处 )。

因此将其更改为allowed.length = 0; 绝对可以。

function MyHandler(cell, allowed, componentList) {
    allowed.length = 0;
    allowed.push("/libs/foundation/components/list");
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM