构建菜单自定义控件,无法获取具有多个实例的属性组。
我的cc代码是:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
xmlns:xe="http://www.ibm.com/xsp/coreex">
<xe:navigator id="navigator1"
styleClass="nav nav-pills nav-stacked">
<xe:this.treeNodes>
<xe:repeatTreeNode indexVar="index" var="entry"
value="#{javascript:compositeData.menuItemGroup}">
<xe:this.children>
<xe:pageTreeNode
label="#{javascript:entry.menuName}">
</xe:pageTreeNode>
</xe:this.children>
</xe:repeatTreeNode>
</xe:this.treeNodes>
</xe:navigator>
</xp:view>
我的Xpage代码是:
<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
xmlns:xc="http://www.ibm.com/xsp/custom"
xmlns:xe="http://www.ibm.com/xsp/coreex">
<xc:cc_CommonMenu xp:key="facetMenu" menuTitle="PCs">
<xc:this.menutItemGroup>
<xc:menutItemGroup menuName="First Menu Item"
menuTarget="/firstMenuItem">
</xc:menutItemGroup>
<xc:menutItemGroup menuName="Second Menu Item"
menuTarget="/secondMenuItem">
</xc:menutItemGroup>
</xc:this.menutItemGroup>
</xc:cc_CommonMenu>
</xp:view>
我怀疑通过阅读数据结构可能更容易做到这一点similar to this post:
答案 0 :(得分:1)
这只是一个小错字。
您的属性组名为$(source).handleServerEvents({
handlers: {
logout: function (msg) {
//Show AngularJS dialog
$mdDialog.alert({
title: 'Attention',
textContent: msg,
ok: 'Close'
});
},
//... Other custom handlers
}
});
- “menu”和“ItemGroup”之间带有“t”。
将自定义控件中的代码更改为
menutItemGroup
(“menu”和“ItemGroup”之间带有“t”),它将起作用。