【问题标题】:How could I create a template in ReactJS?如何在 ReactJS 中创建模板?
【发布时间】:2017-09-27 21:21:00
【问题描述】:

在我的 ReactJS 应用程序中,我有很多路由(React-Router 依赖项)。它们细分为alumnoadmin。学生和管理员模板都有一些共同的元素。

  • 对于学生:页眉、学生菜单、内容、页脚;
  • 对于管理员:页眉、学生菜单、内容、页脚;

因此,在此示例中,我必须有两个模板,一个用于学生,一个用于管理员。我怎样才能创建一个只有内容是动态的而其余的都是静态的模板?换句话说,CONTENT 将是 React-Router 加载我的内容(动态),而所有页面的页眉、菜单和页脚都保留(它们都是一样的,没有重新加载,静态的)。

谢谢。

【问题讨论】:

    标签: reactjs ecmascript-6 react-router


    【解决方案1】:

    React 没有templates 的概念,在 React 中,数据与单个组件中的视图相关联,最接近模板的是您可以将属性传递到的简单/哑/展示组件。您可以根据需要使这些属性变得复杂或简单。但它永远不会只是 html 或其他任何东西,它总是必须是一个组件。你可以了解更多here

    【讨论】:

    • 哇...这个问题来找我是因为每次加载路由时,当重新安装元素时,它们会失去以前的状态,重置它们默认的状态,不得不去通过我要保存的道具属性。如果您可以制作一个不随每条路线安装和拆卸的“模板”,则可以避免这种情况。
    • 花几分钟时间,对你刚才说的话进行推理。模板只是一个模板,数据将单独保存,此外,如果路线更改并且道具更改,您的组件不应该丢失所有数据吗?感觉就像您没有提供所有细节,无论如何答案都是一样的,在我看来,您很难理解 react 是如何工作的,或者如何构建您的应用程序。您使用的是什么数据流库?还原?回流?通量?麦克飞?另类?如果您需要更多帮助,您可能需要重新构建问题。对于这个,我认为您不会得到不同的答案。
    • 感谢您的回复我没有使用任何,目前它没有用。将来可能会使用 Redux。
    • 在这种情况下,你会很好地使用 react-router-redux,不要事后考虑,如果你立即开始使用它,它将帮助你构建你的应用程序。我的规则是,如果您的应用程序足够大以至于需要路由器,那么您应该开始使用数据流库
    猜你喜欢
    • 2013-04-14
    • 2016-06-24
    • 2011-03-03
    • 1970-01-01
    • 2022-06-12
    • 1970-01-01
    • 2021-06-01
    相关资源
    最近更新 更多