问题标签 [blockly]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
398 浏览

android - 块状自定义应用程序崩溃

我正在为 Android 开发 Google Blockly。我已经使用 Blockly 开发人员工具创建了我的自定义块,并将其添加到我的资产文件夹中,并在我的应用程序代码中也引用了它,以下是我的主要方法代码:

所有块定义、代码生成器和工具箱文件都在代码中提到的各自位置。

**现在我的问题是,在运行应用程序时,安装了 apk,但应用程序停止工作。** 。它在运行中显示以下错误:

Logcat 显示以下错误:

我的工具箱 xml 是由 Blockly Developer 工具生成的,如下:

0 投票
1 回答
105 浏览

javascript - 使用“块”功能制作阴影块而不是标准块

是否可以使用功能块创建阴影块?例子:

函数调用返回一个标准块。我可以添加其他参数以便函数返回影子块吗?

0 投票
2 回答
2000 浏览

variables - Blockly 如何为工作区创建变量(开发者变量)

我想在 Blockly 中为工作区创建一个开发人员变量,但我找不到必要的函数/方法。

我不想在按钮上创建变量。即使工作区中没有块,也应包含该变量。

使用这两个函数,我可以获得已经创建的变量:

但是设置功能是什么?

0 投票
1 回答
602 浏览

google-closure-compiler - Google Blockly`命名空间从未提供`closure-compiler.jar错误

我问过这个问题,但我仍然无法解决问题。我收到类似的错误required "Blockly" namespace never provided

我按照Google bLockly 高级编译教程进行尝试。我没有在 Blockly 根目录中创建新目录进行测试,而是在项目中使用blocklyclosure-library作为子目录(子模块),如下所示:

然后使用如下命令编译文件:

堆栈跟踪

操作系统

PS即使我按照教程中的所有步骤操作,我也会遇到相同的错误(与教程相同的目录结构)

0 投票
1 回答
1727 浏览

javascript - User input JavaScript with Electron - alternative to Window.Prompt()

First of all, I've asked a simpler version of this question before delving too much about it in here. However, as I searched things up, things got more complicated and I can describe it a little more.

I'm trying to create an Electron App with Google's Blockly. Renaming variables in Blockly's domain opens up a prompt in the user's browser to ask for the new variable's name, as you can see on it's own website (click on 'Count' and choose 'Rename variable...').

The problem is: Electron doesn't support window.prompt() and it doesn't do anything if I let the code as is, so, after searching a bit, I learned that you can override Blockly.prompt to use your own. My guess: so you can use an alternative to window.prompt()

I installed electron-prompt and was trying to use it to get the user's input in the new prompt window to send it back to Blockly's core functions that handle the renaming. Here's what I'm trying:

EDIT: Source code from electron-prompt is here and, by looking at it and information I tried to adapt from here, I changed to the code above, inferring that prompt returns a promise. However, it seems the callback in Blockly.prompt doesn't wait for the input via the modal opened in setPrompt() and throws an error, but if I use a simple function just returning a string in callback, it works as intended...

Now I'm confused if it's about myself still using Promises wrong or if that callback in Blockly.prompt doesn't support "waiting for promises"...

Hope this helps explain what I've tried using after looking up more information about this problem.

0 投票
0 回答
438 浏览

blockly - 为块状下拉菜单添加图像

我正在开发块状,我需要一个使用图像而不是文本的下拉菜单。我的代码是这样的。

我无法成功定义它并且出现Uncaught TypeError: text.replace is not a function错误。任何人都可以帮助我吗?

0 投票
1 回答
176 浏览

blockly - 块状结构变化是什么情况?

我有一个包含 blockly 的 Web 应用程序,我希望能够将用户在 blockly 上创建的结构保存在后端 db 上。我只想知道如何获取当前的工作区结构,以便我可以将其发布到服务器以保存它。然后在用户登录时再次加载。

谢谢。

0 投票
1 回答
1124 浏览

javascript - JavaScript Blockly.FieldDropdown 参数

我正在做一个带有javascript 库的blockly的项目,我不明白Blockly.FieldDropdown函数的 menuGenerator 变量接受什么类型的参数。在这里你可以看到感兴趣的代码:

我不明白@param {(!Array.|!Function)}是什么意思

0 投票
1 回答
529 浏览

blockly - 在 Blockly Web 中存储和检索文件

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

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

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

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

0 投票
0 回答
304 浏览

python - 安全地使用 Blockly 生成的代码

我正在使用 Google Blockly 插件来构建一些逻辑块、规则等......

Blockly 可以直接从位于画布中的块生成 python 代码:DEMO

现在,我已将 Blockly 集成到我的 django Web 应用程序中,我想知道这是否是一种好方法,它允许我将生成的 python 代码安全地使用到我的 Web 应用程序中,从而防止恶意代码直接注入我的 Web 服务器。

有什么建议吗?

谢谢。