1

我想用 Blockly 做一些计算,然后生成文本文件(而不是将代码导出到 JavaScript、Python、PHP 等)

我看不到在 Blockly 中创建自己的块的明显方法,因此使用 AppInventor(版本:nb168),我可以在我的 Android 平板电脑上的粗略测试应用程序中存储和检索文件。在 AppInventor/Designer 模式下,单击存储/文件会创建一个“用于存储和检索文件的不可见组件。使用此组件在您的设备上写入或读取文件。” 然后,在 AppInventor/Blocks 模式下,单击“File1”图标可以访问 7 个“文件类型块”,例如 AppendToFile、Delete、ReadFrom、SaveFile 等。

是否可以创建类似的“文件类型块”以在 Blockly Web 中使用?

我的编程知识有限,因此请提供简单的答案。谢谢,皮特。

4

1 回答 1

1

来自 Google/Blockly 的 Andrew N Marshall 告诉我:

“这绝对有可能……只要您愿意在浏览器的安全限制范围内工作。生成的文件将需要一次手动“下载”一个,而不是直接写入用户的文件系统。

...我会开始了解您可以使用哪些 JavaScript 函数。尝试构造一个字符串并通过下载对话框保存它...

这意味着“文件”内容实际上只是内存中的一个字符串,一个 JavaScript 变量。我们有很多“文本”块可以对字符串进行各种操作。如果这些就足够了,您只需要一个新块来识别字符串变量并启动下载过程。

否则,你需要考虑你想要什么块,以及它们是如何运作的。它们可以对 JavaScript VM 中的特定变量进行操作,而不必将其作为变量公开给 Blockly。

无论哪种方式,您都需要学习如何创建块和 Blockly 应用程序。我们有一个代码实验室,将引导您完成所有步骤。您将了解每个块如何生成一串代码,在您的情况下,该代码将与我之前提到的下载代码相关。”

所以我会继续前进——我只是想在开始之前确定我的目标实际上是可以实现的。谢谢,皮特。

于 2018-06-11T20:54:07.003 回答