首页演练场案例展示应用文档博客
    • English英语
      EN
    • русский俄语
      RU
    • 日本語日语
      JA
    • français法语
      FR
    • 한국어韩语
      KO
    • 中文中文
      ZH
    • español西班牙语
      ES
    • Deutsch德语
      DE
    • العربية阿拉伯语
      AR
    • italiano意大利语
      IT
    • British English英国英语
      EN-GB
    • português葡萄牙语
      PT
    • हिन्दी印地语
      HI
    • Türkçe土耳其语
      TR
    • polski波兰语
      PL
    • Indonesia印度尼西亚语
      ID
    • Tiếng Việt越南语
      VI
    • українська乌克兰语
      UK
    /
    按框架筛选文档
    Alt+←
    为什么Intlayer?
    开始
    概念
    • Intlayer如何工作
    • 配置
    • TestFillBuildWatchExtractLoginPushPullConfigurationListVersionEditorLiveDebugDoc ReviewDoc TranslateSDK
    • 可视化编辑器
    • CMS
    • CI/CD集成
    • 翻译复数枚举条件性别插入文件嵌套MarkdownHTML函数获取
    • 每个语言环境的文件
    • 编译器
    • 自动填充
    • 测试
    • 打包优化
    环境
    • Next.js 14和应用路由器
      Next.js 15
      Next.js 无 locale URL
      Next.js和页面路由器
      编译器
    • Tanstack Start Solid
    • Astro和React
      Astro和Svelte
      Astro和Vue
      Astro和Solid
      Astro和Preact
      Astro和Lit
      Astro和Vanilla JS
    • React Router v7
      React Router v7 (fs-routes)
      Compiler
    • Nuxt和Vue
    • Vite和Solid
    • SvelteKit
    • Vite和Preact
    • Vite和Vanilla JS
    • Vite和Lit
    • Angular 19 (Webpack)
      Analog
    • React CRA
    • React Native和Expo
    • Express.js
      NestJS
      Fastify
      Hono
      Adonis
    • Lynx和React
    Plugins
    • JSON
    • gettext (.po)
    VS Code扩展
    代理
    • MCP服务器
    • 代理技能
    发布
    • v8
    • v7
    • v6
    基准测试
    • Next.js
    • TanStack
    • Vue
    • Solid
    • Svelte
    博客
    问问题
    1. Documentation
    2. 概念
    3. 内容声明
    4. 插入
    Creation:2025-03-13Last update:2025-06-29
    将此文档参考到您的 AI 助手
    ChatGPT
    Claude
    DeepSeek
    Google AI mode
    Gemini
    Perplexity
    Mistral
    Grok

    使用您最喜欢的AI助手总结文档,并引用此页面和AI提供商

    版本历史

    1. "自动装饰插入内容"
      v8.0.02026/1/18
    2. "初始化历史"
      v5.5.102025/6/29

    此页面的内容已使用 AI 翻译。

    查看英文原文的最新版本
    编辑此文档

    如果您有改善此文档的想法,请随时通过在GitHub上提交拉取请求来贡献。

    文档的 GitHub 链接
    Copy

    复制文档 Markdown 到剪贴板

    插入内容 / Intlayer 中的插入

    插入的工作原理

    在 Intlayer 中,插入内容是通过 insertion 函数实现的,该函数识别字符串中的占位符字段(例如 {{name}} 或 {{age}}),这些字段可以在运行时动态替换。这种方法允许您创建灵活的模板式字符串,其中内容的特定部分由应用程序传入的数据决定。

    当与 React Intlayer 或 Next Intlayer 集成时,您只需提供包含每个占位符值的数据对象,Intlayer 会自动渲染内容并替换占位符。

    设置插入内容

    要在您的 Intlayer 项目中设置插入内容,请创建一个包含插入定义的内容模块。

    使用 insert 函数显式声明插入内容。

    如果字符串包含常见的插入指示符(如 {{name}}),Intlayer 将自动对其进行转换。

    在 React Intlayer 中使用插入内容

    要在 React 组件中使用插入内容,请从 react-intlayer 包中导入并使用 useIntlayer 钩子。该钩子会检索指定键的内容,并允许您传入一个对象,将内容中的每个占位符映射到您希望显示的值。

    **/*.tsx
    复制代码

    复制代码到剪贴板

    import type { FC } from "react";
    import { useIntlayer } from "react-intlayer";
    
    const InsertionComponent: FC = () => {
      const { myInsertion } = useIntlayer("my_key");
    
      return (
        <div>
          <p>
            {
              /* 输出: "Hello, my name is John and I am 30 years old!" */
              myInsertion({ name: "John", age: "30" })
            }
          </p>
          <p>
            {
              /* 您可以使用不同的值重复使用相同的插入内容 */
    tsx fileName="**/*.tsx" codeFormat="typescript"
    import type { FC } from "react";
    import { useIntlayer } from "react-intlayer";
    
    const InsertionComponent: FC = () => {
      const { myInsertion } = useIntlayer("my_key");
    
      return (
        <div>
          <p>
            {
              /* 输出: "Hello, my name is John and I am 30 years old!" */
              myInsertion({ name: "John", age: "30" })
            }
          </p>
          <p>
            {
              /* 你可以用不同的值重复使用相同的插入内容 */
              myInsertion({ name: "Alice", age: "25" })
            }
          </p>
        </div>
      );
    };
    
    export default InsertionComponent;

    附加资源

    有关配置和使用的更详细信息,请参阅以下资源:

    • Intlayer CLI 文档 const { useIntlayer } = require("react-intlayer");

    const InsertionComponent = () => { const { myInsertion } = useIntlayer("my_key");

    return (

    { / 输出: "Hello, my name is John and I am 30 years old!" / myInsertion({ name: "John", age: "30" }) }

    { / 你可以使用不同的值重复使用相同的插入 / myInsertion({ name: "Alice", age: "25" }) }

    ); };

    module.exports = InsertionComponent;

    plaintext
    复制代码

    复制代码到剪贴板

    ## 附加资源有关配置和使用的更详细信息,请参阅以下资源:- [Intlayer CLI 文档](/zh/doc/concept/cli)const { useIntlayer } = require("react-intlayer");const InsertionComponent = () => {  const { myInsertion } = useIntlayer("my_key");  return (    <div>      <p>        {          /* 输出: "Hello, my name is John and I am 30 years old!" */          myInsertion({ name: "John", age: "30" })        }      </p>      <p>        {          /* 你可以使用不同的值重复使用相同的插入 */          myInsertion({ name: "Alice", age: "25" })        }      </p>    </div>  );};module.exports = InsertionComponent;

    附加资源

    有关配置和使用的更详细信息,请参考以下资源:

    • Intlayer CLI 文档
    • React Intlayer 文档
    • Next Intlayer 文档

    这些资源提供了关于在各种环境和框架中设置和使用 Intlayer 的更多见解。

    性别
    文件
    Alt+→

    在此页面

      讨论是匿名的,并会定期审查以解决常见问题。欢迎分享功能想法、对文档的反馈或任何与 Intlayer 相关的内容, 我们会利用这些意见来制定路线图并改进产品。

      ## 附加资源有关配置和使用的更详细信息,请参阅以下资源:- [Intlayer CLI 文档](/zh/doc/concept/cli)const { useIntlayer } = require("react-intlayer");const InsertionComponent = () => {  const { myInsertion } = useIntlayer("my_key");  return (    <div>      <p>        {          /* 输出: "Hello, my name is John and I am 30 years old!" */          myInsertion({ name: "John", age: "30" })        }      </p>      <p>        {          /* 你可以使用不同的值重复使用相同的插入 */          myInsertion({ name: "Alice", age: "25" })        }      </p>    </div>  );};module.exports = InsertionComponent;