使用taro传参示例如下,触发点击事件时,在调用的函数后面加上bind(this,要传的参数)。
{
list.map((item,index)=>(
<View className="articleItem" onClick={this.jumpToDetail.bind(this,item.id)}>
<View className="title">{item.title}</View>
<View className="statement">
<Text className="author">作者:{item.author}</Text>
<Text>发布时间:{processTime(item.updateTime)}</Text>
</View>
<View className="content">
{item.description}
</View>
</View>
))
}
然后进行页面的跳转。
jumpToDetail(id) {
console.log(id)
Taro.navigateTo({
url: `/pages/articleDetail/articleDetail?id=${id}`
})
}
在跳转后的页面进行参数的接收。
使用getCurrentInstance获取当前实例,然后获得参数id的值。
import Taro, { getCurrentInstance } from '@tarojs/taro'
export default class ArticleDetail extends Component {
$instance = getCurrentInstance()
state = {
id:this.$instance.router.params.id,
data:{}
}
}
即可。