我使用 React 和 Redux 构建了一个小型博客应用程序。博客显示帖子页面,其中包含帖子的标题、作者、标签和描述。单击标题或“阅读更多”按钮时,我想从本地项目的数据文件夹中加载并呈现一个带有相应帖子的 HTML 文件,其中包含所有帖子。
Redux 正在管理博客的状态,加载包含 8 个不同帖子的初始 posts.json 文件,包括数据文件夹中相应 html 文件的 htmlPath。
原文由 Intermundos 发布,翻译遵循 CC BY-SA 4.0 许可协议
我使用 React 和 Redux 构建了一个小型博客应用程序。博客显示帖子页面,其中包含帖子的标题、作者、标签和描述。单击标题或“阅读更多”按钮时,我想从本地项目的数据文件夹中加载并呈现一个带有相应帖子的 HTML 文件,其中包含所有帖子。
Redux 正在管理博客的状态,加载包含 8 个不同帖子的初始 posts.json 文件,包括数据文件夹中相应 html 文件的 htmlPath。
原文由 Intermundos 发布,翻译遵循 CC BY-SA 4.0 许可协议
13 回答12.8k 阅读
7 回答1.9k 阅读
3 回答1.1k 阅读✓ 已解决
2 回答1.2k 阅读✓ 已解决
6 回答873 阅读✓ 已解决
2 回答1.4k 阅读✓ 已解决
6 回答1k 阅读
我的看法是您在这里有 2 个问题需要解决。首先是如何在 React 中设置元素的
innerHTML
。另一个是如何根据给定的变量(例如,当前路径、文本字段的输入等)获取特定的 HTML 来呈现。1.设置元素的
innerHTML
您可以使用
dangerouslySetInnerHTML
道具来做到这一点。顾名思义,它将所述元素的innerHTML
设置为您指定的任何内容……是的,“危险”是准确的,因为它旨在让您在使用此功能之前三思而后行。官方文档 是这样写的:
查看此 演示 或下面的代码片段。
2. 从外部源获取 HTML
请注意,上面的示例实际上并没有从外部文件中获取 HTML,而是直接作为字符串输入。
动态获取选择特定文件的一种简单方法是让您的后端(例如 php)从本地文件夹读取文件,解析文本,然后通过 AJAX 请求将其发回。
例子