SuperAPI AI 工具集

fineui-tree

通用与其它

查看项目

更新于 10-16 06:52

技能介绍

用途:在 FineUI 各写法中构建层级数据展示,如组织架构、地区、菜单、分类;支持复选框树级联选中与读取选中节点,适用于节点点击或展开触发后续操作、异步懒加载子节点的场景。

主要能力:树容器与 TreeNode 节点;静态写死、后台代码构建(C# Tree.Nodes.Add(new TreeNode{...}) 或 ViewBag;Java Tree1.addNode(node) + node.addChild(child))或异步懒加载节点;节点图标;复选框树与级联(CascadeCheck / cascade-check);读取选中节点(C# GetCheckedNodes() 返回 TreeNode[],Java getCheckedNodes() 返回 List<TreeNode>;F.js 客户端 getCheckedNodes(true));节点点击与展开事件;异步懒加载(OnNodeLazyLoad / on-node-lazy-load + AutoLeafIdentification="false" / auto-leaf-identification="false",Leaf=false 的节点展开时触发,Leaf=true 为叶子)。

使用方式:先判定写法并保持一致。F.js 用 rootNode.children 挂 JSON 节点,属性 camelCase(text/id/expanded);Pro 在 <Nodes> 内嵌套 <f:TreeNode>;Core-MVC 用 Fluent API(F.Tree().Nodes(F.TreeNode()...));Core-RazorForms/RazorPages 用 <f:Tree>/<f:TreeNode> 标签;Java 用 <f:tree>/<f:nodes>/<f:tree-node> 标签,属性全 kebab-case(is-fluid/show-header/node-id),选中节点用 selected-node-id。C# 节点属性 PascalCase(Text/NodeID/Expanded)且用 NodeID;Java 标签用 node-id,但 TreeNode Bean 用 getId()/setId(...)。节点点击动作使用 ClickHandler / click-handler,值只写页面具名函数,签名为 (event, nodeId),显式返回 false 可取消后续默认动作与服务端事件;不要写 OnClientClick / on-client-click。

适用场景与限制:适合各类写法下的层级数据展示与交互;须先定写法、不混用属性命名风格。级联选中为 CascadeCheck / cascade-check,不存在 AutoCheckParent/AutoCheckChildNodes;读取选中无 GetCheckedNodeIDs。RazorForms / Java 用控件字段读取,MVC/RazorPages 用客户端 getCheckedNodes(true) 序列化后回发。不确定 API 时应查官方在线 API(JS、Pro、Core)或相关文档,不要编造。收费、价格、部署平台等信息暂未提供。