学习鸿蒙基础(5)

一、honmonyos的page路由界面的路径

新建了一个page,然后删除了。运行模拟器的时候报错了。提示找不到这个界面。原来是在路由界面没有删除这个page。新手刚接触找了半天才找到这个路由。在resources/base/profile/main_pages.json 这个和微信小程序好类似呀。

吐槽:华为模拟器启动起来好慢呀。等的花儿都快谢了。并且输入法没有中文。太坑了吧。

二、@State组件

@state装饰的变量,或称为状态变量,一旦变量拥有了状态属性,就和自定义组件的渲染绑定起来。当状态改变时,UI会发生对应的改变。

1、当装饰的数据类型为boolean、string、number类型时,可以观察到数值的变化。

2、当装饰的数据类型为class或者Object时,可以观察到自身的赋值的变化,和其属性赋值的变化。注意:嵌套属性的赋值观察不到。

3、当装饰的对象是array时,可以观察到数组本身的赋值和添加、删除、更新数组的变化。

state修饰符修饰的时候,

@state修饰数组的时候,filter作为过滤器进行数组搜索的过滤。实现一个数组列表的简单搜索功能

代码如下:

TypeScript 复制代码
import bankList from '../utils/bankName'

@Entry
@Component
struct TestState {
  @State banks: any [] = bankList
  @State value: string = ""

  build() {
    Row() {
      Column() {
        TextInput().onChange(value => {
          console.log(value)
          this.value = value
        })
        List() {
          ForEach(this.getCop(), (item, index) => {
            ListItem() {
              Text(item.value).fontSize(20).textAlign(TextAlign.Center).width("100%")
            }.margin(10)
          })
        }.height(500).divider({
          strokeWidth: 1,
          color: Color.Blue,
          startMargin: 40,
          endMargin: 40
        })
      }
    }
  }

  getCop() {
    //数组的filter是过滤器
    return this.banks.filter(item =>item.value.includes(this.value))
  }
}
TypeScript 复制代码
const  list = [
  {
    value: 'CCB',
    text: '中国建设银行'
  },
  {
    value: 'ABC',
    text: '中国农业银行'
  },
  {
    value: 'BOC',
    text: '中国银行'
  },
  {
    value: 'PSBC',
    text: '中国邮政储蓄银行'
  },
  {
    value: 'ICBC',
    text: '中国工商银行'
  },

  {
    value: 'COMM',
    text: '交通银行'
  },
  {
    value: 'CDB',
    text: '国家开发银行'
  },
  {
    value: 'GSBANK',
    text: '甘肃银行'
  },
  {
    value: 'CMB',
    text: '招商银行'
  },
  {
    value: 'SPDB',
    text: '上海浦东发展银行'
  },
  {
    value: 'CIB',
    text: '兴业银行'
  }
];
export default list
相关推荐
AI周红伟1 小时前
三年狂赚1.75亿!卖课,才是中国AI最容易赚钱的生意
人工智能·深度学习·学习·机器学习·copilot·openclaw
永远不会的CC1 小时前
Hello-Agents 初识智能体(实现一个简单旅游推荐智能体)
人工智能·学习·旅游
东京老树根1 小时前
SAP学习笔记 - BTP CAP开发06 - Customize Criticality,Map Page,Value help
笔记·学习
Bechamz3 小时前
大数据开发学习Day25
java·大数据·学习
zhangrelay3 小时前
云课实践速通系列-基础篇汇总-必修-通识基础和专业基础-2026--工科--自动化、电气、机器人、测控等
linux·笔记·单片机·学习·ubuntu·机器人·自动化
计算机安禾4 小时前
【计算机网络】第5篇:网桥学习与生成树算法——环路拓扑中的路径收敛问题
学习·计算机网络·算法
知识分享小能手4 小时前
R语言入门学习教程,从入门到精通,R语言局部整体型数据可视化(10)
学习·信息可视化·r语言
承渊政道5 小时前
【动态规划算法】(完全背包问题从状态定义到空间优化)
数据结构·c++·学习·算法·leetcode·动态规划·哈希算法
玩转单片机与嵌入式5 小时前
学习嵌入式AI(TInyML),只需掌握这点python基础即可!
人工智能·python·学习
ErizJ5 小时前
Linux|学习笔记
linux·笔记·学习