# egret_list_demo
**Repository Path**: zhangtao3/egret_list_demo
## Basic Information
- **Project Name**: egret_list_demo
- **Description**: Egret List Demo
- **Primary Language**: TypeScript
- **License**: Not specified
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2018-05-17
- **Last Updated**: 2020-12-19
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# egret_list_demo
#### 项目介绍
Egret List Demo
增删改查选操作
码云:https://gitee.com/zhangtao3/egret_list_demo.git
GitHub:https://github.com/564239493/egret_list_demo.git
# 准备
ListPanelSkin
```
```
ListItemSkin
```
```
# ListPanel
初始化数据源
```
private dataArray: eui.ArrayCollection = new eui.ArrayCollection();
```
初始化List
```
this.dataList.dataProvider = this.dataArray;
this.dataList.itemRenderer = ListItem;
```
初始化数据
```
private initData(): any {
var tempArray = [];
for (var i = 0; i < 40; i++) {
tempArray.push({ index: i, msg: i + "文本内容", status: 0 });
}
return tempArray;
}
```
渲染List
```
var data = this.initData();
// 渲染List
this.dataArray.replaceAll(data);
```
```
// 在list末尾添加
public addItem(): void {
var index = this.dataArray.length;
var data = { index: index, msg: index + "文本内容", status: 0 };
this.dataArray.addItem(data);
}
```
```
// 在item当前位置添加
public addItem2(data, index): void {
this.dataArray.addItemAt(data, index);
}
```
```
public deleteItem(index): void {
// var location = this.dataArray.getItemIndex(item);
// if (location != -1) {
// this.dataArray.removeItemAt(location);
// }
this.dataArray.removeItemAt(index);
}
```
# ListItem
```
protected dataChanged(): void {
// 渲染UI,{data.msg}相当于this.txtMsg.text = this.data.msg
if (this.data.status == 1) {
this.txtMsg.text = this.data.msg + ",已选择";
} else {
this.txtMsg.text = this.data.msg;
}
}
private addItem(): void {
ListPanel.instance.addItem2({ index: this.data.index + "-1", msg: "新增加", status: 0 },this.itemIndex);
}
private updateItem(): void {
this.data.msg = "已修改";
}
private deleteItem(): void {
ListPanel.instance.deleteItem(this.itemIndex);
}
private chooseItem(): void {
if (this.data.status == 0) {
this.data.status = 1;
} else {
this.data.status = 0;
}
this.dataChanged();
}
```
比较简单的增删改查操作,主要是项目中有些复杂的增删改功能呢,本来想在此demo练习实现,实际比较复杂,没有成功,仅保留基本操作。