
# 设置华为云Astro轻应用标准页面分栏组件属性
分栏是一种高级的容器组件，分栏相当于行，内部可分多栏（列）。使用该组件，可将页面划分为两栏或多栏，每一栏都可以拖入其它组件。
图1分栏组件   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001944495161.png "点击放大")
#### 数据绑定
标准页面中的组件，通过建立不同类型的视图模型，将各种数据源和组件的返回值或者属性值进行关联，实现动态数据效果。
- 值绑定：值绑定类似Vue中的v-model语法，组件上创建双向数据绑定。值绑定会根据组件类型自动选取正确的方法来更新元素。同时，负责检测各类引起绑定数据变化的事件以更新数据。
  1. 在"数据绑定"中，单击"值（value）绑定"中的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001910981938.png)，进入选择模型页面。
  
  2. 单击"新增模型"，进入新增模型页面。
  
  3. 设置"模型名称"与"来源"，单击"下一步"。
     图2定义模型   
     ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001911143054.png "点击放大")
     华为云Astro轻应用支持自定义、对象、服务和事件四类模型，每类模型都包含参数定义和方法定义。方法是在模型上定义的API，通常会在前台组件关联的事件脚本（例如页面加载事件、鼠标单击事件）中调用这些API，以实现某些功能。
      表1模型来源说明 
     | 分类  | 模型说明                                                                                                                                                                                                                  | 模型参数的定义                                       | 模型方法的定义                        | API调用方法                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
     |:---|:---|:---|:---|:---|
     | 自定义 | 开发者自行定义的模型。                                                                                                                                                                                                           | 由开发者自定义，可以添加子节点。                              | 开发者自定义方法。                      | *$model.ref("modelName").actionName();*                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                              |
     | 对象  | 由Object对象表映射生成，关于对象模型的详细介绍，请参见[对象](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9024.html)。                                                                                                      | 系统自动获取Object所有的字段，开发者可以从中选择部分字段作为参数。          | 系统自动生成查询、保存、删除和统计四个方法。         | - 查询：*$model.ref("modelName").query(param);*  - 保存：*$model.ref("modelName").save();*  - 删除：*$model.ref("modelName").delete();*  - 统计：*$model.ref("modelName").count();*   |
     | 服务  | 服务模型由后台服务映射生成，当前仅支持与服务编排、脚本进行映射。关于服务模型的详细介绍，请参见[服务编排](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9129.html)和[脚本](https://support.huaweicloud.com/usermanual-astrozero/astrozero_05_9159.html)。 | 参数根据后台服务的入参、出参，映射生成为inputParam和outputParam节点。 | 系统自动生成run方法 ，用于执行模型关联的服务编排或脚本。 | *$model.ref("modelName").run();*                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                     |
     | 事件  | 事件模型由后台事件的字段映射生成，并且支持websocket刷新模型数据。                                                                                                                                                                                 | 参数根据后台事件的字段映射生成。                              | 直接使用                           | 直接使用                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 |
        
     除了在模型中定义的方法，低代码平台还提供了如下标准API，适用于所有的模型。
     - 获取模型数据：*$model.ref("modelName").getData();*
     
     - 设置模型数据：*$model.ref("modelName").setData();*
     
     - 设置模型字段值：*$model.ref("modelName").setValue(key,value);*
      
  
  4. 在新建模型"设置"页面，执行如下操作。
     - 上一步来源选择"自定义"，需要添加子节点自定义参数及类型。
     
     - 上一步来源选择"对象"，需要配置模型关联的对象以及字段。
     
     - 上一步来源选择"服务"，需要配置模型关联的后台服务，可以是脚本、服务编排或者公共接口。
     
     - 上一步来源选择"事件"，需要配置模型关联的事件以及事件字段。
      
  
  5. 单击"下一步"，设置方法。 方法一般无需添加，如需添加或修改，可参考对象和服务默认生成的方法。
     
  
  6. 设置完成后，单击"确定"。
   
- 属性值绑定：将容器组件的某个属性，如隐藏、样式、弹性布局等与具体的模型字段绑定，绑定后组件的属性随模型字段的值变化而变化，类似Vue的v-bind。
  1. 在"数据绑定"中，单击"属性值绑定"后的"+"。
  
  2. 在"属性"下拉框中，选择容器的某个属性。
  
  3. 在模型字段中，单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001911145882.png)，进入选择模型页面。
  
  4. 单击"新增模型"，进入新增模型页面。
  
  5. 设置模型名称与来源，单击"下一步"。
     华为云Astro轻应用支持自定义、对象、服务和事件四类模型，每类模型都包含参数定义和方法定义。方法是在模型上定义的API，通常会在前台组件关联的事件脚本（例如页面加载事件、鼠标单击事件）中调用这些API，以实现某些功能。详细介绍，请参见[表1]。
     图3定义模型   
     ![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001944465069.png "点击放大") 
  
  
  
  6. 在新建模型"设置"页面，执行如下操作。
     - 上一步来源选择"自定义"，需要添加子节点自定义参数及类型。
     
     - 上一步来源选择"对象"，需要配置模型关联的对象以及字段。
     
     - 上一步来源选择"服务"，需要配置模型关联的后台服务，可以是脚本、服务编排或者公共接口。
     
     - 上一步来源选择"事件"，需要配置模型关联的事件以及事件字段。
      
  
  7. 单击"下一步"，设置方法。 方法一般无需添加，如需添加或修改，可参考对象和服务默认生成的方法。
     
  
  8. 设置完成后，单击"确定"。
   
 
#### 扩展
单击"新增行"后的![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001944497297.png)或者![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001911178100.png)，可在当前"分栏"上方或者下方新增分栏（即新增行）。
图4在上方增加一行   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001911017972.png "点击放大")
#### 行布局
系统支持设置PC端或者手机端布局，并默认提供了一些常见的行布局，如单栏、二等分栏等。单击在"行布局"中的某一个模式，例如单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894299888.png)，当前分栏将被分割成3栏，如[图5]所示。
图5默认行布局   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894299896.png "点击放大")
您也可以通过单击![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001894299872.png)，手工输入的方式自行设置列的分隔比例，比例相加份数总和必须为24，例如12:12、6:18、3:21、8:8:8等。自定义比例以英文冒号分隔。
分栏组件会根据分辨率大小自适应，当画布宽度小于992像素，PC会展示为单列模式，此时可以通过调整左侧菜单收缩或者画布分辨率来查看不同的效果。
图6自定义行布局   
![](https://support.huaweicloud.com/usermanual-astrozero/zh-cn_image_0000001936099545.png "点击放大")
- 布局模式：设置每一个分栏的布局模式。
  - 流式布局：页面元素的宽度，按照屏幕分辨率进行适配调整，但整体布局不变。
  
  - 弹性布局：可以简便、完整、响应式的实现各种页面布局，选择"弹性布局"时还可以设置垂直对齐方式、水平排列方式以及分栏间隔。
   
 
#### 样式
针对有丰富前端开发经验的用户，可通过"样式"面板对页面进行更深度的个性化布局定制。
- 布局：对页面CSS属性进行直接配置，如设置组件的宽度、高度等。您也可以在"高级设置"中，直接编写CSS代码进行更深度的个性化布局定制。
  - 单击"显示"属性后的按钮，可以快速指定当前元素布局为"block"、"inline-block"、"inline"和"flex"。
  
  - "显示"属性下方展示了当前元素的盒模型示意图，在对应的数字位置单击并改变值，即可快速改变元素上下左右位置上的内外边距属性。
  
  - 当前元素盒模型示意图下方，展示了当前元素的宽和高，默认是根据当前布局自适应后的宽高，可以在这里手动输入值配置当前元素的宽和高。
  
  - 盒模型和宽高配置时，支持"px"、"em"、"%"、"auto"等多种单位。
   
- 字体：设置字体大小、字体样式、颜色等。
- 背景：设置背景颜色、透明度。
- 边框：设置边框颜色、宽度等，支持"px"、"em"和"%"三种单位。
- 阴影：设置阴影颜色、模糊、扩散等，支持"px"、"em"和"%"三种单位。
- 高级设置：在高级设置中，直接编写CSS代码作用于当前元素。
  - 样式源码：组件具体样式代码，组件样式设置后，样式代码将自动显示在"样式源码"中。也可以自定义样式代码，对组件进行详细配置。自定义代码支持多行输入，并高亮显示样式参数。
  
  - 样式类：当前组件使用的CSS样式类名，可在CSS代码中进行引用。
   
 
