支持页面内容的多种语言
问题
我们需要的是创建一个页面,但将文本内容翻译成多种语言。想象一个非常简单的示例,只有一个文本块写着“Hello”——我们不想强迫用户创建另一个页面,里面有同样的文本块,用不同的语言表达同样的内容。想象一下,页面必须翻译成10种语言,而页面有20个文本块——要用不同文本克隆并维护包含相同组件的页面克隆会太困难(新增文本字段需要在每个克隆中添加,而这没人愿意做)。有没有什么办法可以用当前的 GrapesJS 实现这一点,比如一个下拉菜单,可以在不同的“集合”文本内容之间切换,让用户可以选择一种语言,然后去更改该语言的文本内容,或者他想要的任何组件?
我曾考虑在 StoreManager 的“store”函数中存储“data”对象,但如果用户切换语言并添加新组件,这样效果就不好——那么当前语言对象和其他所有语言对象会变得不同(其他语言对象没有为当前语言添加新组件)。
回答(3)
@varadero i18n 模块在 [路线图](https://github.com/artf/grapesjs/issues/74#issue-222570799) 干杯!
@pouyamiralayi 但那里提到的 i18n 不就是个模块,可以让你翻译 GrapesJS 本身,而不是用户创建的内容吗?
相关问答
通过相似的问题讨论继续研究。
问题 #2315
允许从 StorageManager 的 '.load' 和 '.store' 方法返回承诺
这将提供比当前基于回调的方法更现代、更简洁的 API。 拟议API: “JavaScript 编辑。StorageManager.add('simple-storage', { 加载:异步键 => { const result = await foo(keys) return...
问题 #6064
在程序中设置文本内容会在画布中清除
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? V126 可复制演示链接 https://jsfiddle.net/r5062suy/1/ 描述一下那个虫子 如何复现这个漏洞?运行演示链接(https://jsfiddle.net/r5062s...
问题 #4497
从 v18.4 更新到 GrapesJS v19.5 会导致 Chrome 变得无响应
葡萄JS版本[x] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome 104.0.5112.79可复制演示链接 https://jsfiddle.net/gvrnw2c3/4/描述一下那个虫子 如何复现这个漏洞? 我目前无法用 jsfiddle 重现这个...
问题 #5042
每次调用 editor.loadData(data, opts) 时,都会触发编辑器中定义的存储方法。Storage.add(“api-remote”, {...}),该文件记录“api-remote store”消息
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 最新版本的Chrome浏览器 可复制演示链接 无效 描述一下那个虫子 如何复现这个漏洞? 很简单 预期的行为是什么? 我想用editor.load加载数据和切换页面,但我不想要编辑器。每次都要叫储...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
浏览插件分类
直接跳转到市场上的插件分类页面。