유닛으로 제 Mardown을ReactElement으로 바꿔주세요.
모르는 단어는 용어를 모은 글를 참조하십시오.
현재 모범 사례
2021년 4월까지 아래의 포장을 조합해서 사용하는 것이 좋다.
코드 예
이전에 만든 Zenn의 메시지 서명을 설명하는 플러그인를 사용할 때의 코드 예시.
processor.ts
import React from "react";
import unified from "unified";
import parser from "remark-parse";
import mdast2hast from "remark-rehype";
import compiler from "rehype-react";
import { attacher, handler } from "./zenn-message";
const processor = unified()
.use(parser)
.use(attacher)
.use(mdast2hast, { handlers: { message: handler } })
.use(compiler, { createElement: React.createElement });
export default processor;
변환 프로세스의 정의는 다음과 같습니다.App.tsx
import React from "react";
import processor from "./processor";
const SAMPLE = `
:::message
This is a message
:::
:::message
But this is not a message
::
~~~markdown
# Heading 1
**strong**
~~~
`;
function App() {
return (
<>
<h1>This is a Markdown</h1>
{processor.processSync(SAMPLE).result}
</>
);
}
export default App;
이 항목이 표시되면 다음이 표시됩니다.의도대로 렌더링되었습니다.
기타 옵션
리마크에 있는 사람한테 물어봤어요.로 판단하다.
리마크-react 안 써요?
계획은 더 이상 유지보수되지 않는다.또한 현재 Type Script는 지원되지 않습니다.
그럼 react-markdown은요?
react-markdown은 Mardown에서 React Element으로 전등으로 전환하려는 상황을 구상한 포장이다.
실제로 react-markdown은 설정을 상세하게 지정할 수 없기 때문에 아래처럼 쉽게 사용할 수 있습니다.
import React from "react";
import ReactMarkdown from "react-markdown";
import { render } from "react-dom";
render(<ReactMarkdown># Hello, *world*!</ReactMarkdown>, document.body);
react-remark가 Hooks를 준비했는데...?
리액트 17은 움직이지 않는 것 같아.쫓아다닐 기운이 없어서.
하지만 앞으로는 주요 보양이다.
Reference
이 문제에 관하여(유닛으로 제 Mardown을ReactElement으로 바꿔주세요.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/januswel/articles/c0e663c88b562bfde8ff텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)