Я знаю, что функции стрелок наследуют контекст родителя, поэтому они так полезны в React.Тем не менее, у меня есть этот компонент React:
import React, { Component } from 'react';
import { View, Text } from 'react-native';
import axios from 'axios';
class AlbumList extends Component {
constructor(props) {
super(props);
this.state = {
albums: [],
};
axios.get('https://rallycoding.herokuapp.com/api/music_albums')
.then(response => {
this.setState({ albums: response.data });
});
}
renderAlbums() {
const { albums } = this.state;
const array = albums.map(album => (
<Text>{album.title}</Text>
));
return array;
}
render() {
return (
<View>
{ this.renderAlbums() }
</View>
);
}
}
export default AlbumList;
И { this.renderAlbums() }
работает нормально, и мне не нужно преобразовывать renderAlbums()
в функцию стрелки.Я читал другие ответы на stackoverflow, но все они упоминают, что вам нужна функция стрелки или bind
, чтобы this
работал правильно.Но в моем случае все работает нормально, так зачем использовать функцию стрелки внутри класса es6?