在HarmonyOS NEXT中 关于@State或@Link 修饰Array的应用的问题解决方法?

阅读 620
1 个回答

对于@State修饰的数组,确保对数组进行修改的操作是直接修改数组本身,而不是创建一个新的数组引用。通过push、pop、splice等方法来修改数组。

@Entry
@Component
struct MyComponent {
    @State myArray: number[] = [1, 2, 3];
    addNumber() {
        this.myArray.push(4); // 正确的修改方式,直接操作@State数组
    }
    build() {
        Column() {
            ForEach(this.myArray, (item) => {
                Text(item.toString()).fontSize(20);
            })
            Button('添加数字')
            .onClick(() => {
                  this.addNumber();
              })
        }
    }
}

本文参与了 【 HarmonyOS NEXT 技术问答冲榜,等你来战!】欢迎正在阅读的你也加入。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进