javascript - 将 redux saga 与 next.js 一起使用是反模式吗?
问题描述
我用 next.js 创建了一个页面,如下所示。
使用getInitialProps()
在早期设置属性。它也使用异步调用。然后我想知道在 next.js 中使用 redux saga 真的很有用。
sampleFetchWrapper()
实现如下。
import fetch from 'isomorphic-unfetch'
export async function sampleFetchWrapper(
input: RequestInfo,
init?: RequestInit
) {
try {
const data = await fetch(input, init).then(res => res.json())
return data
} catch (err) {
throw new Error(err.message)
}
}
这是其他人使用 redux saga 和 next.js 的帖子。但我想知道这是不是正确的方法。你能推荐正确的想法吗?
解决方案
它有效,可能仅用于初始渲染。但SPA不止于此。
如果您在客户端应用过滤器怎么办?您将需要在应用过滤器的情况下获取新数据。写评论怎么样?您需要向服务器发送请求、获得响应并显示添加的评论。
因此,在页面绘制后与后端交互的情况下,使用 redux-saga 是一个很好的方法。如果getInitialProps
您想在用户打开页面后立即显示内容(而不是显示加载屏幕),或者如果您想进行搜索引擎优化。当然,更快的页面渲染也很重要。
推荐阅读
- python-3.x - 我想检查单词的第一个和最后一个字母是否相同以返回 True 否则为 false。但它每次都返回true
- algorithm - 我需要帮助来计算这个算法的复杂性
- ssrs-2008-r2 - 如何摆脱我的 SSRS 报告中的空白页
- node.js - 通过反应原生android请求http时警告H28和错误请求中止
- node.js - 一段时间后没有发出套接字 IO 消息
- javascript - 无法使用快速路由器和控制器读取未定义问题的属性“lazyrouter”
- javascript - 如何确定 HTML 文本是否使用图标字体?
- angular - 在单元测试角度处理设置超时
- swift - 将运行脚本生成的文件添加到Xcode中的测试目标编译列表中
- google-apps-script - 在应用程序脚本中创建一个简单的确认框以在我的 html 中弹出