Node.js 在网站中引入组件的最佳实践?
我必须维护一个包含大量javascript UI内部组件的网站。为了减少维护和使用经过大量测试的框架所需的代码量,我想将一些组件迁移到React/JSX。到目前为止,这似乎不是一件痛苦的事 但是,这些组件是本地化的。在将组件发送到客户端之前,将在服务器端呈现它们的翻译 为了保持相同的体系结构原则,我的想法是使用Node.js作为中间件,动态地将任何“{…}”替换为其本地化版本,并向客户端提供“呈现的”react组件。 但这更像是一次黑客攻击,我很确定这可能会导致性能问题Node.js 在网站中引入组件的最佳实践?,node.js,reactjs,localization,Node.js,Reactjs,Localization,我必须维护一个包含大量javascript UI内部组件的网站。为了减少维护和使用经过大量测试的框架所需的代码量,我想将一些组件迁移到React/JSX。到目前为止,这似乎不是一件痛苦的事 但是,这些组件是本地化的。在将组件发送到客户端之前,将在服务器端呈现它们的翻译 为了保持相同的体系结构原则,我的想法是使用Node.js作为中间件,动态地将任何“{…}”替换为其本地化版本,并向客户端提供“呈现的”react组件。 但这更像是一次黑客攻击,我很确定这可能会导致性能问题 是否有一种常见(或最佳)
是否有一种常见(或最佳)的做法来处理这种情况?常见的最佳做法是将可本地化的字符串包装到React组件中,并随应用程序包提供翻译,这样用户就可以随时切换语言和日期/数字格式 您可能希望查看最流行的组件,以使其开箱即用:
react-i18next
中的一个示例:
<div>Just simple content</div>
<div>
Hello <strong title="this is your name">{name}</strong>, you have {count} unread message(s). <Link to="/msgs">Go to messages</Link>.
</div>
<div>{t('simpleContent')}</div>
<Trans i18nKey="userMessagesUnread" count={count}>
Hello <strong title={t('nameTitle')}>{{name}}</strong>, you have {{count}} unread message(s). <Link to="/msgs">Go to messages</Link>.
</Trans>
只是简单的内容
您好{name},您有{count}封未读邮件。转到消息。
{t('simpleContent')}
你好{strong title={t('namettitle')}>{{name}},您有{{count}}封未读邮件。转到消息。
常见的最佳实践是将可本地化字符串包装到React组件中,并随应用程序包提供翻译,这样用户就可以动态切换语言和日期/数字格式
您可能希望查看最流行的组件,以使其开箱即用:
react-i18next
中的一个示例:
<div>Just simple content</div>
<div>
Hello <strong title="this is your name">{name}</strong>, you have {count} unread message(s). <Link to="/msgs">Go to messages</Link>.
</div>
<div>{t('simpleContent')}</div>
<Trans i18nKey="userMessagesUnread" count={count}>
Hello <strong title={t('nameTitle')}>{{name}}</strong>, you have {{count}} unread message(s). <Link to="/msgs">Go to messages</Link>.
</Trans>
只是简单的内容
您好{name},您有{count}封未读邮件。转到消息。
{t('simpleContent')}
你好{strong title={t('namettitle')}>{{name}},您有{{count}}封未读邮件。转到消息。