col*_*fet 6 android ios rxjs react-native
我正在使用React Native和RxJS,直到现在,只要我订阅了一个我一直在做的观察:
observable.subscribe(() => {
this.setState({ loading: true });
}.bind(this));
Run Code Online (Sandbox Code Playgroud)
但是自从我升级到React Native 0.16.0后,无论我在使用ES2015箭头符号声明的内联函数上执行bind(this),React Native都会将其作为错误进行选择.但是,当我将箭头符号更改回ES5常规函数表示法时,如下所示:
observable.subscribe(function() => {
this.setState({ loading: true });
}.bind(this));
Run Code Online (Sandbox Code Playgroud)
错误似乎消失了.
这里发生了什么?
小智 9
当您使用箭头功能时,您已经将其绑定到该特定功能.所以:
() => {} === function() {}.bind(this)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4107 次 |
| 最近记录: |