Мне нужно отобразить строку HTML (JSX) в классе React. Я не знаю, возможно ли это или нет. dangerouslySetInnerHTML недействителен для меня, потому что у меня разные компоненты реакции внутри этого файла. Это не простой HTML.Как визуализировать строку с JSX в React
У меня есть пример с ожидаемым результатом: https://jsfiddle.net/86rg50re/1/
var MyComponent = React.createClass({
propTypes: {
owner: React.PropTypes.string
},
render: function() {
return <div>Congrats {this.props.owner}! you have rendered MyComponent ({this.props.children})</div>;
}
});
var Hello = React.createClass({
render: function() {
return <div>Header <MyComponent owner={"Daniel"}>Yayyyyyy!</MyComponent></div>;
}
});
Но что у меня есть это:
var Hello = React.createClass({
render: function() {
var content = '<div>Header <MyComponent owner={"Daniel"}>Yayyyyyy!</MyComponent></div>';
return transformStringToJSX(content);
}
Очевидно transformStringToJSX не существует.
Есть ли способ визуализации строк jsx?
Не могли бы вы просто импортировать файл как файл JavaScript и ссылаться на переменные и компоненты из него, как и на любой другой импорт? – Bojangles
Я полагаю, что это мой последний вариант. Я предпочел бы другой вариант, потому что я хочу хранить только содержимое JSX в этом файле. – gyss
JSX заканчивается тем, что он просто JavaScript. Я считаю, что лучше всего экспортировать тонкий компонент упаковки и импортировать его как JS. – Bojangles