Witajcie, jestem nowy, aby zareagować i utknąłem w pewnym projekcie. Chodzi o to, że mam api_urlin this.props otrzymane od komponentu nadrzędnego. W tym komponencie potomnym chcę użyć api_url do pobrania niektórych danych przy użyciu JSON.Uzyskiwanie dostępu do this.props in w reagowaniu ComponentDidMount
W komponentu macierzystego mam
Repositories api_url={this.state.objs.repos_url}
aw składniku dziecka, chcę coś
componentDidMount() {
$.getJSON(this.props.api_url, function(json) {
for (var i = 0; i < json.length; i++) {
var each_repo = json[i]
console.log(each_repo["name"]);
}
});
}
więc to, co jest mi potrzebne odpowiedni api_url w sekcji url $ .getJSON .
Czy istnieje sposób dostępu do this.props w componentDidMount lub czy jest jakiś inny sposób uzyskania tych samych wyników?
Inną rzeczą związaną z tym jest to, że im również za pomocą wywołania $ .getJSON w ComponentDidMount elementu nadrzędnego. Z góry dzięki.
Nie jestem pewien, aby w pełni zrozumieć ... ten.props jest dostępny w całej klasie. Twój kod jest OK. –
Już możesz, masz na myśli wewnątrz '$ .getJSON'? .. –
Twój kod działa - http://jsbin.com/wirodemulu/edit?html,js,console,output - jeśli chcesz uzyskać dostęp do' this' z funkcji wywołania zwrotnego w '$ .getJSON' należy użyć' .bind() '. –