Navigation prop reference之addLis

2018-11-02  本文已影响108人  吴敬悦

此篇教程会持续更新。。。

官方文档:https://reactnavigation.org/docs/zh-Hans/navigation-prop.html

调试环境

需求来源:有时候我们从一个页面返回到上一个页面的时候,此时我们需要这个页面有一些地方进行重新渲染,从而达到我们的需求。

非常简单只需要两步就可以达到要求:

1)添加监听属性即处理方法;

添加监听的位置,只要是第一次进入组件时必定会调用的函数(方法),比如说:constructor和componentWillMount函数(方法):

this.didBlurSubscription = this.props.navigation.addListener(

    'didBlur',

    payload => {

        console.debug('didBlur', payload);

    }

);

这段代码是官方提供的,其中addListener函数(方法)接受两个参数,第一个是监听类型:

监听类型

第二参数就是处理的方法,直接使用箭头函数即可,并不是一定要按照官方提供的那种方式进行写,比如写成这样:()=>{/*要处理的逻辑*/}

2)释放监听器

移除监听器的方法跟清楚定时器是一样的,在组件被卸载的函数中调用,也就是在componentWillUnMount函数(方法)中,代码如下:

this.didBlurSubscription.remove();

由于监听器不在同一个方法中,所以需要将变量声明为类成员变量(属性)。

上一篇 下一篇

猜你喜欢

热点阅读