我想使用react and express创建一个多页APP。
我对如何在不使用API的情况下将快递发送的数据进行检索感到困惑。
我想知道react是否可以检索express发送的html道具中存储的数据? 也许这个问题有点奇怪。实际上,我从未创建过一个快递网站。我总是使用react和通过API检索数据并创建一个单页应用程序。
有什么办法吗?
答案 0 :(得分:1)
反应和表达扮演着两个不同的角色。 React是您的前端。 Express是后端。 这些是逻辑上分离的层。将数据从后端加载到前端的首选方法是通过API调用。
答案 1 :(得分:0)
I wonder if react can retrieve the data stored in html props sent by express?
是的。我不确定“ html道具”是什么意思,但是当将html发送回前端时,您可以将所需的数据存储为数据属性,然后像这样将其从DOM中取出({{3 }})。
根据您打算如何使用它,您可以只提取一次数据或将其推入您的状态。
答案 2 :(得分:0)
我认为的第一种方法是使用url中的参数。
例如,如果您的网站具有类似http://localhost/
的网址,而您将使用http://localhost/api/data?
来接收来自express.js的数据。
然后在您的express.js
中,在收到您的响应请求后,您可以使用:
res.redirect(http://localhost/api/${encodeURIComponent(JSON.stringify(data))})
其中res
是响应对象,data
是要发送到数据的数据,该数据被假定为对象。
在react
中,您可以按照以下步骤检索数据:
-实现一个组件并将/api/data?
设置为该组件的路由;
-在组件中,以JSON.parse(decodeURIComponent(this.props.match.params.data))