1

我正在尝试使用 react 和标记的节点包构建降价预览器。当我尝试解析 DOM 上的任何降价时,一切正常。当我这样做时,我收到一条错误消息:未捕获的 TypeError:标记的不是函数。

我在文件顶部标记了声明,如下所示:

import { useState } from "react";
import "./App.css";
const marked = require("marked");

我也尝试像这样声明标记:

import { useState } from "react";
import "./App.css";
const { marked } = require("marked");

但这似乎并没有什么不同。

这是我的代码配置:

            <div className="preview-label">Preview</div>
            <div
              id="preview"
              className="preview-area"
              dangerouslySetInnerHTML={{
                __html: marked(mrkdwn),
              }}
            ></div>
          </div>

我也试过:

            <div className="preview-label">Preview</div>
            <div
              id="preview"
              className="preview-area"
              dangerouslySetInnerHTML={{
                __html: marked.parse(mrkdwn),
              }}
            ></div>
          </div>
            <div className="preview-label">Preview</div>
            <div
              id="preview"
              className="preview-area"
              dangerouslySetInnerHTML={{
                __html: marked.parser(mrkdwn),
              }}
            ></div>
          </div>

            <div className="preview-label">Preview</div>
            <div
              id="preview"
              className="preview-area"
              dangerouslySetInnerHTML={{
                __html: marked.Parser(mrkdwn),
              }}
            ></div>
          </div>

但是,我在这些尝试中也收到了类似的错误消息,只是在这些情况下,消息说 .Parser、.parse、.parser 等不是函数。

如果您需要查看更多代码,请告诉我。

我无法在任何谷歌搜索中找到解决方案。我可能错过了一些东西。

任何帮助将不胜感激。

先感谢您。

4

1 回答 1

5

我发现我应该像这样导入标记:

import { marked } from 'marked'
于 2022-01-10T02:44:19.910 回答