为显示本地和静态数据的页面部分组织代码的惯用方式?

时间:2018-10-19 08:53:42

标签: reactjs redux

<Logos>组件显示在我的<Home>组件内部:

import * as React from 'react';
import SectionContainer, { 
    InnerSectionContainer, 
    FlexContainer, 
    FlexItem 
} from '../../../ui/SectionContainer';
import ScaledImage from '../../../ui/ScaledImage';

const Logos = () => {
    return (
        <SectionContainer>
            <InnerSectionContainer>
                <SectionHeader>
                    Trusted by
                </SectionHeader>
                <FlexContainer>
                    <FlexItem>
                        <ScaledImage src={require('../../../images/logo1.png')} />
                    </FlexItem>
                    <FlexItem>
                        <ScaledImage src={require('../../../images/logo2.png')} />
                    </FlexItem>
                    <FlexItem>
                        <ScaledImage src={require('../../../images/logo3.png')} />
                    </FlexItem>
                    <FlexItem>
                        <ScaledImage src={require('../../../images/logo4.png')} />
                    </FlexItem>
                </FlexContainer>
            </InnerSectionContainer>
        </SectionContainer>
    );
};

export default Logos;

我将此组件描述为:

  • 相当笨,因为它不是动态的,但由于它包含静态数据(节标题文本和图像url),因此可能不是完全愚蠢。
  • 作为可重用的ui组件很不有趣,因为它只是以一种简单的方式重用了其他ui组件

我的项目中具有以下文件夹结构

components
--scenes
----home
------logos
--ui
connectors

HomeLogo没有连接器,因为它们不访问全局state

在React Redux项目中组织<Logos>当前使用的代码的惯用方式是什么?

以下是一些我认为对我来说似乎合理的选择:

  • 将徽标保持原样,作为我的场景文件夹中一个不完全愚蠢的组件
  • 保持徽标不变,但将嵌入式数据移入状态以将内容与演示文稿分开
  • 为徽标创建一个名为“ TrusedBy”的连接器,以将标题文本和url提供给徽标组件,而无需将此数据存储在全局存储中,因为在其他任何地方都不需要此数据

这些选项是否比其他选项更惯用?还是还有其他更惯用的方式?

0 个答案:

没有答案