开源 FormCreate 表单设计器配置组件的多语言

form-create-designer 是一款开源的低代码表单设计器,通过数据驱动表单渲染。可以通过拖拽的方式快速创建表单,提高开发者对表单的开发效率,节省开发者的时间。并广泛应用于在政务系统、OA系统、ERP系统、电商系统、流程管理等领域。

源码地址: Github | Gitee | 文档 | 官网 | 在线演示

定义拖拽规则

在设计表单组件时,可以使用 languageKey 来声明组件的多语言 ID。这使得在组件插入表单时,能够自动管理和匹配对应的多语言配置。

ts 复制代码
const dragRule = {
    type: 'upload2',
    languageKey: ['clickUpload']
    //...
}

组件中使用

在组件实现中,通过 formCreateInject.t 方法可以从多语言配置中读取和显示对应文本。这种方式能够确保文本自动根据语言环境显示相应内容。

vue 复制代码
<template>
    <button>{{formCreateInject.t('clickUpload') || '点击上传'}}</button>
</template>

<script>
    export default {
        props: {
            formCreateInject: Object
        }
    }
</script>

在上述代码中,formCreateInject.t('clickUpload') 将获取并显示"clickUpload" ID 对应的多语言字符串。

数据结构

ts 复制代码
typeof t = (id: string, params?: Object) => string | undefined;
  • 可以使用{param}这种大括号的方式在多语言字符中引入变量。

  • params对象中的值将自动替换多语言字符串中的变量占位符。

示例:传递参数到多语言字符串

假设您有以下的多语言配置和实现:

多语言配置:

json 复制代码
{
  "welcomeMessage": "Welcome, {name}!"
}

使用代码:

vue 复制代码
<template>
    <div>{{formCreateInject.t('welcomeMessage', { name: 'John' })}}</div>
</template>

将生成:

复制代码
Welcome, John!

通过对多语言功能的有效利用,您可以显著提升组件的国际化能力,而不妨碍开发的灵活性。希望这份指南能够帮助您更好地配置和实现多语言支持,使应用更具国际吸引力。

相关推荐
benbenAItalk5 小时前
数字人口播视频的批量生产实践:素材规范、任务编排与质量验收
java·前端·音视频
2601_962885725 小时前
如何用 Python 扫描 A 股跳空缺口并统计缺口回补概率?
java·前端·python
西瓜太郎12346 小时前
Claude Code、Codex CLI、Gemini CLI 能否共用一枚 Key?先看协议选择矩阵
前端·api 网关·claude code·gemini cli·codex cli
冬奇Lab7 小时前
一天一个开源项目(第216篇):OpenViking - 给 AI Agent 装上可自进化的上下文数据库
人工智能·开源·资讯
陈随易8 小时前
在Finch用了62亿词元,我认为这是新一代Agent工具之神
前端·人工智能·后端
水域安全老周8 小时前
水趣钓鱼救生衣专利拆解:两级锁紧如何解决落水人衣分离
java·前端·网络
计算机魔术师9 小时前
Anthropic CEO突然喊踩刹车,OpenAI罕见力挺:AI这辆车不能只踩油门了
前端
wing989 小时前
从codex转战workbuddy使用一周的感受
前端·人工智能·后端
EatFan9 小时前
Java接入支付宝 JSAPI 支付保姆教程(二):流程讲解与前后端代码讲解
前端·spring boot·后端·微信小程序·小程序·uni-app
梦想平凡9 小时前
百游棋牌源代码开发搭建教程(五):房间创建、座位分配与请求幂等实现
前端·javascript·数据库·源代码管理