我在React Redux应用程序中进行了返回JSON对象的API调用。
现在我发现我需要在原始JSON对象之上添加方法,然后返回以围绕这些模型添加前端业务逻辑。
所以说我从API中以JSON的形式获取用户模型,目前只能公开API的JSON对象中的属性。
从API取回方法/属性后,我想添加方法/属性。
这是好习惯吗?如果是这样,必须有一种方法可以对所有API进行调用吗?
答案 0 :(得分:1)
不,这不是一个好习惯。从FAQ docs:
我可以将功能,承诺或其他不可序列化的商品置于商店状态吗?
强烈建议您仅将简单的可序列化对象,数组和基元放入存储中。从技术上讲,可以将不可序列化的项目插入商店,但是这样做会破坏持久存储和重新存储商店内容的能力,并干扰时间旅行调试。
如果您对持久性和时间旅行调试之类的东西可能无法按预期进行的工作感到满意,那么完全欢迎您将不可序列化的商品放入您的Redux存储中。最终,这是您的应用程序,如何实现它取决于您。与有关Redux的许多其他事情一样,只需确保您了解所涉及的权衡。
react-redux
框架很大程度上基于功能编程的原理。您正在尝试做的更多是面向对象的。我鼓励您阅读功能编程和面向对象编程之间的区别。它们是非常的不同范例。 https://medium.com/@sho.miyata.1/the-object-oriented-programming-vs-functional-programming-debate-in-a-beginner-friendly-nutshell-24fb6f8625cc
如果您需要在json对象之上添加功能,则应创建将json对象作为参数接受的函数,然后从那里执行所需的操作。如果您有所需功能的更具体的示例,我也许可以建议一种更清洁的方法。