Все:
Я новичок в React.js и просто использую немного AngularJS, есть один вопрос о React.js:
В AngularJS часть HTML обычно отделяется от JS-кода в качестве шаблона, мне нравится этот способ, который делает код чистым, интересно , есть ли аналогичный способ, который я могу сделать в React, или просто использовать функцию для применения this.state/this.props для части HTML?
благодаря
Функция render
- это просто синхронная функция. Пока шаблон уже загружен чем-то, вы можете это сделать абсолютно.
//Some module that has loaded the HTML
import jsxStore from 'jsxStore';
class SillyComponent extends React.Component {
render() {
return jsxStore.getSillyComponent(this.props, this.state);
}
}
Задача здесь заключается в обеспечении того, чтобы HTML был загружен ко времени выполнения этого вызова, поскольку render
не принимает асинхронные результаты. HTML должен быть загружен, прежде чем компонент попытается что-либо сделать.
Следует отметить, что вы боретесь с Реатом, делая это. Идея React для компонента - это автономный пакет кода и представления. Цель состоит в том, чтобы сохранить компонент в одном файле, чтобы вы могли сразу увидеть все это. Это отличается от рамок, таких как Угловое преднамеренно. Если вам это не нравится, React не подходит для вас.