gpt4 book ai didi

reactjs - 从路径显示 Markdown 文件与 typescript react

转载 作者:行者123 更新时间:2023-12-05 04:39:23 28 4
gpt4 key购买 nike

我正在尝试在我的 react/typescript 应用程序中创建一些指向不同 .md 文件的路径。

我的 App.tsx 有这个:

<Router>
<main>
<nav className="navbar navbar-expand-md navbar-light bg-white sticky-top px-3">
<button className="navbar-toggler" type="button" data-bs-toggle="collapse" data-bs-target="#navbarSupportedContent" aria-controls="navbarSupportedContent" aria-expanded="false" aria-label="Toggle navigation">
<span className="navbar-toggler-icon"></span>
</button>
<div className="collapse navbar-collapse flex-row-reverse" id="navbarSupportedContent">
<ul className="navbar-nav mb-2 mb-lg-0">
<li className="nav-item">
<a className="nav-link active" href="/#About">About</a>
</li>
<li className="nav-item">
<a className="nav-link active" href="/FirstDoc">FirstDoc</a>
</li>
<li className="nav-item">
<a className="nav-link active" href="/SecondDoc">SecondDoc</a>
</li>
</ul>
</div>
</nav>
<Routes>
<Route path="/" element={<Home />}></Route>
<Route path="/FirstDoc" element={<FIFI />}></Route>
<Route path="/SecondDoc" element={<SESE />}></Route>
</Routes>

<div className="row row-cols-sm-1 py-5 m-0 text-center">
<hr className="my-4"/>
<div className="col p-3">
<p className="m-0">This is my footer</p>
</div>
</div>
</main>
</Router>

我正在从一个名为 MdFiles.tsx 的文件导入 FirstDoc 和 SecondDoc,如下所示:

import React, {FC} from "react"
import ReactMarkdown from 'react-markdown'

const fifiDoc = "./docs/FirstDoc.md"
const seseDoc = "./docs/SecondDoc.md"

const FIFI: FC = () => {
return(
<ReactMarkdown children={fifiDoc} />
);
}

const SESE: FC = () => {

return(
<ReactMarkdown children={seseDoc} />
);
}

export {FIFI, SESE};

我希望我的应用程序在路由容器内显示 de .md 内容,但是当它运行时它会按原样显示文档的路径

例如

带导航的标题

./docs/FirstDoc.md

页脚

带导航的标题

./docs/SecondDoc.md

页脚

因为是把它们当作一个字符串。

我需要它来获取路径相关文件中的文本并显示它,我喜欢在创建 const fifiDocconst seseDoc< 时编写所有内容 但是很长,最好从 .md 文件中导入它。

我会感谢你的帮助。

提前致谢

最佳答案

你可以试试这段代码:

const [text, setText] = useState('')
useEffect(()=>{
const firstPath = require("./firstDoc.md");

fetch(firstPath)
.then(response => {
return response.text()
})
.then(text => setText(text))
},[])

然后将此文本传递给带有 children 属性的组件。

<ReactMarkdown children={text} />

<ReactMarkdown>{text}</ReactMarkdown>

并查看这些 article .尝试使用 promises 和文件上传来使用react。我相信你会成功。

关于reactjs - 从路径显示 Markdown 文件与 typescript react ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70454754/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com