lau*_*ent 27 javascript oop utility-method reactjs redux
在React-Redux应用程序中,我有一个这样的状态:
state = {
items: [
{ id: 1, first_name: "John", last_name: "Smith", country: "us" },
{ id: 2, first_name: "Jinping", last_name: "Xi", country: "cn" },
]
}
Run Code Online (Sandbox Code Playgroud)
我使用React组件渲染.
现在我需要一个能给我一个人"全名"的功能.所以它不仅仅是"first_name + last_name",而是取决于国家(例如,它在中国将是"last_name + first_name"),所以有一些相对复杂的逻辑,我想把它包装在一个可以从任何地方使用的函数中反应组件.
在OOP中,我会创建一个Person::getFullName()
方法来提供这些信息.然而,state
对象是一个"哑"的对象,其中子对象没有任何专门的方法.
那么一般来说,在React-Redux中管理它的推荐方法是什么?我能想到的只是创建一个全局函数,例如,user_getFullName(user)
它会占用用户并返回全名,但这不是很优雅.有什么建议吗?
Tim*_*imo 27
我遵循在我的应用程序中为这样的情况创建库的方法,到目前为止,这对我来说非常有效.
在这种情况下,我会创建一个新模块,例如根据情况{ComponentRoot}/lib/user.js
导出一个函数getFullName(user)
或可能getFullName(firstName, lastName, country)
.
现在只需要导入需要功能的模块,不需要全局功能:
import React from 'react'
import {getFullName} from '../lib/user'
const Title = ({user}) =>
<div>
{getFullName(user)}
</div>
Run Code Online (Sandbox Code Playgroud)
我们将库文件夹放在与组件文件夹等相同的级别上,但是哪种方法最适合您应该这样做.
Tyl*_*ong 13
utils/
文件夹: 归档时间: |
|
查看次数: |
13245 次 |
最近记录: |