Maison  >  Questions et réponses  >  le corps du texte

Ajoutez de nouveaux éléments au contenu de réaction dans Next.js sans utiliser JSX

J'utilise réagir-markdown pour créer un DOM virtuel, qui permet de mettre à jour uniquement le DOM modifié au lieu d'une réécriture complète. Il génère le contenu dans la balise

. Je souhaite ajouter une balise

à l'intérieur de la balise .

<ReactMarkdown
              components={
                {
                code({ node, inline, className, children, ...props }) {
                  const match = /language-(\w+)/.exec(className || '');
                  return !inline && match ? (
                    <SyntaxHighlighter
                      {...props}
                      style={a11yDark}
                      language={match[1]}
                      PreTag="div"
                    >
                      {String(children).replace(/\n$/, '')}
                    </SyntaxHighlighter>
                  ) : (
                    <code {...props} className={className}>
                      {children}
                    </code>
                  );
                },
              }}
            >
              {content}
            </ReactMarkdown>

P粉184747536P粉184747536247 Il y a quelques jours618

répondre à tous(1)je répondrai

  • P粉311617763

    P粉3116177632024-01-18 00:23:45

    Probablement en utilisant une fonction de rendu personnalisée pour le type de nœud de paragraphe. Je ne suis pas sûr, mais cela pourrait aider.

    import React from 'react';
    import ReactMarkdown from 'react-markdown';
    
    const renderers = {
      paragraph: ({ node, ...props }) => {
        return <p {...props}><span>在此添加您的附加内容</span>{node.children}</p>;
      },
      // 根据需要使用您的自定义渲染器
    };
    
    const content = '在此添加您的markdown内容';
    
    const App = () => {
      return (
        <ReactMarkdown renderers={renderers}>
          {content}
        </ReactMarkdown>
      );
    };
    
    export default App;

    répondre
    0
  • Annulerrépondre