Je suis en train d'écrire un site de documentation basé sur React. Je veux montrer le code qui est nécessaire pour utiliser un composant donné de mon framework. En même temps, je voudrais montrer le fonctionnement réel du composant, comme une vue côte à côte.ReactJS JSX toString()
Actuellement, j'ajoute le composant en tant que chaîne pour l'implémentation de référence et le composant en tant que JSX pour le scénario en cours d'exécution. Quelque chose comme ceci:
var ButtonDoc = React.createClass({
render: function() {
let buttonComponent = (
<Button label="Add" />
);
let buttonCode = `<Button label="Add" />`;
return (
<div>
{buttonComponent}
<pre><code>{buttonCode}</code></pre>
</div>
);
}
});
Question: Est-il possible que je peux obtenir la représentation de chaîne du composant donné React sans qu'il soit nécessaire de reproduire le code?
Je me attends quelque chose comme ceci:
var ButtonDoc = React.createClass({
render: function() {
let buttonComponent = (
<Button label="Add" />
);
let buttonCode = `${buttonComponent}`;
return (
<div>
{buttonComponent}
<pre><code>{buttonCode}</code></pre>
</div>
);
}
});
La sortie du code donné est object [object]
.
Pouvez-vous faire une sorte d'appel ajax et de récupérer un fichier script sous forme de texte/plaine? Cependant, si vous transpilez votre JSX, il ne ressemble plus à jsx ... – ndugger
Oui, l'idée est d'être la représentation exacte que l'utilisateur peut facilement copier et coller dans son application existante. –