scratch二次开发,blockly积木块的多语言效果实现

大家好,我是小黄。

今天给大家分享的是如何实现blockly的国际化效果(多语言的实现)。类似下面的效果:

一.实现过程

1.1自定义一个积木块

复制代码
Blockly.Blocks['motion_test_language'] = {
  /**
   * 国际化测试.
   * @this Blockly.Block
   */
  init: function() {
    this.jsonInit({
      "message0": "国际化测试 %1",
      "args0": [
        {
          "type": "input_value",
          "name": "STEPS"
        }
      ],
      "category": Blockly.Categories.motion,
      "extensions": ["colours_motion", "shape_statement"]
    });
  }
};

1.2在toolbox中注册

复制代码
    '<block type="motion_test_language" id="motion_test_language">' +
    '<value name="STEPS">' +
      '<shadow type="math_number">' +
        '<field name="NUM">10</field>' +
      '</shadow>' +
    '</value>' +
  '</block>' +

保存后编译查看效果,我们看到这样一个积木块。

1.3修改为国际化模式

在scratch-msgs下面重新设置两个字段,我们这次就演示英文和中文模式。

Blockly.ScratchMsgs.locales"zh-cn"这个是简体中文模式的定义

Blockly.ScratchMsgs.locales"en"这个是英文模式的定义

修改定义的块变为动态的导入

保存编译后查看效果

这样我们就实现了多语言的积木块效果了!

创作不易,各位帅气漂亮的小伙伴点个关注再走呗!!

相关推荐
孟浩浩1 小时前
JAVA SpringAI+阿里云百炼应用开发
java·开发语言·阿里云
碧蓝的水壶2 小时前
数据转换过程
java·开发语言·windows
2501_947575808 小时前
计算机毕业设计之jsp开山车行二手车交易系统
java·开发语言·hadoop·python·信息可视化·django·课程设计
骑士雄师8 小时前
java面试题 4:鉴权
java·开发语言
Byron__9 小时前
AI学习_06_短期记忆与长期记忆
人工智能·python·学习
时间的拾荒人9 小时前
C语言字符函数与字符串函数完全指南
c语言·开发语言
2501_948106919 小时前
计算机毕业设计之基于jsp教科研信息共享系统
java·开发语言·信息可视化·spark·课程设计
取经蜗牛10 小时前
Python 第一阶段完全指南:从零到第一个实用工具
开发语言·python
创世宇图10 小时前
【Python工程化实战】OpenTelemetry 在 Python 中的全链路追踪落地:从埋点到可视化的完整实战指南
python·分布式链路追踪·性能监控·opentelemetry·微服务可观测性
dog25010 小时前
从重尾到截断流量模型的演进
开发语言·php