Вы должны сохранить список фильмов в состоянии вашего компонента. Подробнее о состоянии приложения и жизненном цикле компонентов читайте в документации React
class MovieRow extends React.Component {
constructor(props) {
this.state = {
movies: []
}
}
}
Затем в методе, который обрабатывает событие click в кнопке Add, вы можете использовать setState () , чтобы обновить состояние, а затем изменения будут отражены в шаблоне.
addToFavourites() {
const newMovie = getMovie(); // I don't know where are you getting the movie, but you get the idea.
this.setState((state) => {
return {
movies: [...state.movies, newMovie]
}
});
}
Затем, учитывая, что вы сохранили в этом состоянии массив объектов, представляющих ваши фильмы. Вы должны сопоставить этот массив со списком компонентов в функции рендеринга.
Пример:
render() {
return (
this.state.movies.map((movie) => )
)
}
: write ++ enc = utf-8 russian.txt
Таким образом, вы сможете изменить кодировку как часть команда записи.
Как и ваши шаги, настройка кодирования файлов должна работать. Однако я хотел бы добавить одну «бомбу установки», чтобы помочь редактору рассматривать файл как UTF8.
$ vim file
:set bomb
:set fileencoding=utf-8
:wq
Обратите внимание, что есть разница между
set encoding
и
set fileencoding
. В первом случае вы измените отображаемую кодировку вывода в терминале. Во втором случае вы измените кодировку вывода записываемого файла.
При использовании vim это вполне возможно, почему бы и нет? Вы просто используете iconv? Я имею в виду - загрузка текстового редактора только для преобразования кодировки кажется использованием слишком большого молотка для слишком маленького гвоздя.
Просто:
iconv -f utf-16 -t utf-8 file.xml > file.utf8.xml
И готово.