LeftRightPage

低代码页面设计器的左右布局容器:按 ratio 把子区块切成左右两区,逐区递归渲染。

最后更新

说明

容器型区块,注册在 PageComponents 表下、键为 "left-right"、IsContainer 为真(改类名不影响已发布页面 JSON)。按 Block.Settings 的 ratio 键(左区占比,解析后夹在 0.15~0.85、缺省 0.5)把子区块 Children 切成左右两区,两区各以 flex 撑开并交给 PageRenderer 递归渲染其中的子区块。设计态下某区没有子区块时,显示「左侧区域」「右侧区域」的虚线放置占位,设计画布可继续向容器拖放。Title 作为翻译键本地化,样式集中在框架 web.css 的 .pg-lr / .pg-region / .pg-slot 段。

常见能力:

  • 按 Settings 的 ratio 把子区块切成左右两区(夹在 0.15~0.85)
  • 两区各由 PageRenderer 递归渲染子区块,可任意嵌套
  • 容器组件:设计态空区给出左右放置占位、支持继续拖放
  • 经 PageComponents 注册表按键 left-right 引用,与已发布页面 JSON 解耦
  • 标题本地化、样式随 data-theme 明暗切换

用法

@* 按 ratio 切成左右两区,每区由 PageRenderer 递归渲染 *@
@{ var lr = new PageBlock
{
    Component = "left-right",
    Title = "设备总览",
    Settings = { ["ratio"] = "0.4" },
    Children =
    {
        new PageBlock { Component = "table", Title = "台账",
            Settings = { ["columns"] = "设备编码,名称,状态", ["rows"] = "3" } },
        new PageBlock { Component = "chart", Title = "趋势",
            Settings = { ["type"] = "line", ["series"] = "12,8,15,6,9" } },
    },
}; }

<LeftRightPage Block="lr" Design="false" />

API 参数

参数 类型 默认值 说明
Block PageBlock PageBlock 区块数据(子区块按 Settings["ratio"] 分到左右两区)。
Design bool false 是否设计态。

所有组件均继承 BaseComponent,除上表参数外还支持 Class、Style、Disabled、Visible。

微信公众号二维码 扫码关注公众号
QQ 交流群二维码 扫码加入 QQ 群