React 中的 Markdown 与 Typescript

Markdown in React with Typescript

有没有办法使用 Typescript 在 React 中解析 Markdown?

我正在尝试做如下事情:

import * as ReactMarkdown from 'react-markdown'
// OR
import ReactMarkdown = require('react-markdown')

但 Typescript 无法找到模块 'react-markdown',因为它未定义:

Error: TS2307: Cannot find module 'react-markdown'.

如何定义模块并将其用作 React 组件?

我使用 commonmark 包解决了我的问题。他们有打字和我的环境所需的一切。这是我的实现:

import { HtmlRenderer, Parser } from 'commonmark'

export class MyComponent extends React.Component<{}, {}> {
  private post: string

  constructor () {
    super()
    let parser = new Parser()
    let renderer = new HtmlRenderer()
    this.post = renderer.render(parser.parse("**works** like a charm!"))
  }

  render () {
    return (
      <div dangerouslySetInnerHTML={ {__html: this.post} } />
    )
  }
}

此外,不要忘记为 commonmark 添加类型:

$ typings install --global --save dt~commonmark

感谢那些试图提供帮助的人!