开源改变世界

Yaml_Settings 分支 – ESP32 WebUI“设置”不工作……我有一个 index.html.gz 可以帮助 #932

推推 grbl 3年前 (2023-01-30) 180次浏览
打开
porton1 打开了这个问题 2021 年 7 月 3 日 · 0 条评论
打开

注释

Yaml_Settings 分支 - ESP32 WebUI“设置”不工作......我有一个 index.html.gz 可以帮助 #932

嘿,早上好!

我猜你已经知道 WebUI Javascript 不能与 Yaml_Settings 分支的 HEAD 一起工作。特别是,ESP32“设置”窗格不能正常工作,尤其是子“路径”中的设置。

我不确定 Luc 的计划或进展,但与此同时,我克隆了他的源代码并构建了一个新的 index.html.gz 并做了一些小改动,比目前位于 Yaml_Settings 分支 HEAD 的 2.1b68 对我来说效果更好。

我的构建基于他的 2.1b70 提交,所以也许那里也有一些修复……例如 2.1b70 的慢跑控制似乎对我来说效果更好……而且我没有改变任何可以解释的东西…… . 但除此之外,今天早上我对 JS 做了一些小改动,以使其更好地工作,以解决 Grbl_Esp32 存储库的 Yaml_Settings 分支中的一些问题。

我将在下面解释,但如果您想尝试一下,可以在https://github.com/phorton1/Grbl_Esp32_WebUI/blob/master/index.html.gz
上找到。尝试新索引相当轻松.html.gz …

我对 JAVASCRIPT 所做的更改在理解 ESP3D 代码基本上会发回您发送给它的设置的情况下,今天早上进行了三处微小的更改。

** “你”是“Esp32_Grbl WebServer”的简写),“他”或“他”是 ESP3D Javascript 代码的简写。

  • 首先,我从 JS 代码的路径中删除了前导斜杠。

当“您”向他发送 Json 时,您包括了前导正斜线。
所以,他发回给你的时候,是不行的。

你发送:/arc_tolerance=blah
他(本质上)发送 $/arc_tolerance=blah

失败并出现错误 3。因此,通过在 JS 中删除前导路径定界符,他返回 $arc_tolerance=blah ,这是有效的。再一次,这些 JS 更改只是 C++ 代码中的“未决”解决方案,但这是一个相当安全的更改。

  • 其次,我的构建使用“L”字段而不是“P”字段作为“命令路径”,用于将参数发送回服务器。

此时,无论出于何种原因,当“你”将 Json 发送给“他”时,你发送的是“L”标签的完整路径,但只是“P”路径部分的叶节点。因此,当“他”将设置发回给“您”时,他只发送终端叶子,而“您的”代码失败。

因此,例如,如果您尝试更改 /Axes/X/StepsPerMM 或其他内容,他实际上会发送 $StepsPerMM=50,而实际上它应该发送更像是 $Axes/X/StepsPerMM=50 的内容。

顺便说一句,我认为你应该只发送一个字段或另一个字段,javascript 应该将它用于“标签”和“命令路径”……节省发送的字节数并简化概念框架。

  • 最后,第三,“我的”代码按字母顺序对设置列表进行排序,这样可以更轻松地找到您想要修改的内容。可以很容易地实现替代排序,但对我来说似乎有意义的是,默认按字母顺序排序是最“预期”的行为。您不必按照您希望它们显示的相反顺序或任何此类废话来创建设置。事实上,向 Json 添加“排序键”是微不足道的,因此 Esp32_Grbl 可以准确指定它希望如何在 UI 中对设置进行排序,而无需考虑 C++ 实现。
    我将从我的 WebUI JS 中支持这些更改,因为您可以在 Esp32_Grbl 代码中更正它。

无论如何,我想你可能想知道这个 index.html.gz

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

1名参加者
Yaml_Settings 分支 - ESP32 WebUI“设置”不工作......我有一个 index.html.gz 可以帮助 #932

喜欢 (0)