scratch3.0二次开发之scratch-blocks的免编译修改方法

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接: https://blog.csdn.net/jyht1226/article/details/102614337

scratch-blocks编译的时候会出现的问题:scratch-gui依赖的scratch-blocks模块在安装的时候编译会报错。
在这里插入图片描述
原因:scratch-blocks编译时要调用的build.py文件运行时发生错误。windowst系统下,代码压缩的过程是build.py通过一个closure-library的插件处理后,发送到谷歌的服务器进行压缩,返回的结果会生成blocks_compressed.js,blocks_compressed_horizontal.js,blocks_compressed_vertical.js这几个文件。(linux系统下,有网友反映会编译成功的。)build.py运行时,因为window系统在574行处要处理大量的信息流,所以导致错误发生。但即便成功,因为之后要把代码发送到国内经常访问不到的谷歌服务器,所以也会经常编译失败。这种方法每修改一次代码就要编译一次,效率比较低,比较耗时。

有没有种方法不用编译,就能修改scratch-blocks代码,而且能即时生效呢?答案是,有的。

scratch3.0是怎么引进scratch-blocks的呢?在scratch-gui的源文件src\containers\blocks.jsx中,引入了scratch-blocks,

import VMScratchBlocks from '../lib/blocks';

嗯…这是经过修改后的blocks,我们再顺着调用的路径,打开文件src\lib\blocks.js,这文件的作用是修改对应的角色(target)块的菜单项。

第一步,引入scratch-block

猜你喜欢

转载自blog.csdn.net/jyht1226/article/details/102614337
今日推荐