使用reactjs时复杂的逻辑应该放在哪里才能方便用Jasmine测试? 我应该将它们放在 Reactjs 组件中吗? 我应该创建一个单独的 JS 模块并通过 props 将其包含到组件中吗? 我应该把它放在 Flux 商店中吗?
最佳答案
在组件之间共享逻辑的方法有很多种,这取决于您的场景和设计。假设您的 BookStore
中有 Book
状态。您需要访问多个 API、获取响应并将它们合并到 Book
状态对象中。合并响应的逻辑可以在 BookStore
中定义,每个组件都可以使用 Book
状态,而不必担心转换对象。由于转换逻辑仅在 BookStore
中定义,因此可以帮助您轻松测试逻辑。
因此,如果您的“复杂逻辑”意味着如何将数据转换为状态,请将它们放入存储中。如果它们指的是您如何检索数据,请将它们放入您的操作中。如果逻辑意味着您如何处理状态并影响 UI,请将它们放入您的组件中。如果该逻辑在组件之间共享,请创建一个单独的 JS 模块。
关于javascript - 使用reactjs时复杂的逻辑应该放在哪里才能方便测试?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32665827/