我是React Native的新手,當我遇到此問題時正在使用Navigator播放。React Native- this.props在不同文件中的場景中爲空
這是文件中的我的主類:CategoryScene,這
export default class CategoryScene extends Component {
render() {
...
var testArr = {... } ;
testArr.forEach(function(testEl) {
var test = this.props.test;
});
}
}
出於某種原因,在:
class SweetSpotClient_Proto extends Component {
render() {
return (
<Navigator
initialRoute={{ test: CategoryScene }}
renderScene={this.renderScene.bind(this)}/>
);
}
renderScene(route, navigator) {
return <CategoryScene test={route.test}/>
}
}
這是我在文件B場景。道具爲空,所以我無法訪問this.props.test。
我做錯了什麼?
我厭倦了我機器中的完全相同的代碼,它像一個魅力工作。你可以仔細檢查它是否工作? –
所以我發現這個問題,上面的代碼顯然沒有提供足夠的細節。失敗的部分被forEach()塊封裝,出於某種原因(我不知道這是否由JS設計),**在ForEach中,範圍更改爲DedicatedWorkerGlobalScope而不是最內層的閉包**;因此,this.props變爲空...感謝所有您的幫助。 –
更新了原始發佈。我發現**我使用var而不是let,導致forEach的範圍被綁定到最外層對象**而不是最近的封閉對象......謝謝.. –