
前言
 服务模块属于一个应用里面可以拓展的地方,三方服务或者新增加的服务全部可以放进来,这里用的核心组件就是Grid组件
一般的步骤
- 编写一个Gird的子组件item,这个item一般有图标和文字按照上下进行排列
- 编写一个Grid的组件单元,循环渲染多个item
- 编写一个容纳所有服务的页面,这个页面可以自行设计
- 每个服务的组件名、单元名可以单独封装成一个数据对象,这样便于修改和扩充
// 1.编写一个Gird的子组件item,这里已经封装了资源数据,例如长宽高边距等等,单独封装成常量
// 这里展示核心代码
export default struct GridItemComponent { 
  build() {  
    GridItem() {  
      Column() {  
        Image(this.itemImage)  
        Text(this.itemName)  
      }  
    }  
  }  
}
// 2.Grid的组件单元,这里展示核心代码
Grid() {  
  ForEach(this.gridData.gridItemList, (item: string) => {  
    GridItemComponent({ itemName: item })  
  },(item:string,index:number)=>index+JSON.stringify(item))  
}
//3. 容纳所有Grid组件的页面,这里展示核心代码
GridComponent({ gridData: featureGridData })  
//这里封装第2步的布局,传输数据,先渲染一个服务单元,如上图常用服务
List({ scroller: this.scrollerForList }) {  //这里按照List列表展示多个Grid组件单元
  ForEach(otherGridDataList, (item: GridData, index: number) => {  
    GridComponent({ gridData: item, isLastItem: index === otherGridDataList.length - 1 })  
  }, (item: GridData,index:number) =>index+JSON.stringify(item))  
}















![[Oracle]面试官:你说说rownum、currval与nextval分别是什么,还有没有其他的?](https://i-blog.csdnimg.cn/blog_migrate/d5d52cb0eac77ea3caa31b7ffb315557.png)



