1, 先看效果
2, 先准备好两个页面
index 页面 传递参数
import router from '@ohos.router'@Entry
@Component
struct Index {@Statelist: string[] = ['星期一', '星期二','星期三', '星期四','星期五']@StateactiveIndex: number = 0build() {Row() {Column({ space: 10 }) {ForEach(this.list, (item: string, index: number) => {Text(item).width('100%').height(50).textAlign(TextAlign.Center).fontSize(16).backgroundColor(this.activeIndex === index ? Color.White : Color.Orange).onClick(()=>{this.activeIndex = indexconsole.log('111',this.activeIndex)})})Row(){Text('跳转传参').onClick(()=>{router.pushUrl({url:'pages/one',params: {value:'test'}})})}}.width(90)}.padding(15).backgroundColor(Color.Pink).width('100%').alignItems(VerticalAlign.Center)}
}
3, 接受参数
import router from '@ohos.router'
import promptAction from '@ohos.promptAction'// 声明接受参数的类型
interface PARAMS {value: string
}@Entry
@Component
struct one {@StateparamsValue: PARAMS = {value: ''}aboutToAppear() {// as 转换一下变成我们要接受的类型this.paramsValue = router.getParams() as PARAMS// 控制台打印console.log(`111, ${JSON.stringify(this.paramsValue)}`)// 提示传过来的内容promptAction.showToast({message: this.paramsValue.value})}build() {Column(){Text('55555555555')// 显示传的参数内容Text(this.paramsValue.value)}.width('100%').height('100%').justifyContent(FlexAlign.Center)}
}