开源 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!

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

相关推荐
我是大头鸟5 分钟前
SpringMVC 内容协商处理
前端
Humbunklung5 分钟前
Visual Studio 2022 中添加“高级保存选项”及解决编码问题
前端·c++·webview·visual studio
LunarCod11 分钟前
Ubuntu使用Docker搭建SonarQube企业版(含破解方法)
linux·运维·服务器·ubuntu·docker·开源·sonarqube
墨水白云21 分钟前
nestjs[一文学懂nestjs中对npm功能包的封装,ioredis封装示例]
前端·npm·node.js
满怀10151 小时前
【Vue 3全栈实战】从响应式原理到企业级架构设计
前端·javascript·vue.js·vue
luckywuxn1 小时前
使用gitbook 工具编写接口文档或博客
前端
梅子酱~1 小时前
Vue 学习随笔系列二十三 -- el-date-picker 组件
前端·vue.js·学习
伟笑1 小时前
elementUI 循环出来的表单,怎么做表单校验?
前端·javascript·elementui
辣辣y1 小时前
React中useMemo和useCallback的作用:
前端·react
Alice-YUE2 小时前
【HTML5学习笔记1】html标签(上)
前端·笔记·学习·html·html5