#4061·node-red

在 Node-RED 事件处理程序中更新 TypedInput 的类型不会更新。

作者: stijn1989创建于 2023年2月14日更新于 2026年9月11日
标签bugeditor

当前的行为

我正在开发一个节点,可以从配置节点的传感器中选择传感器. 当用户编辑配置节点中的传感器并保存它时,它会回到节点设置面板. 用户可以选择传感器的元素,在返回后应当更新.

用户可以从节点-RED型输入UI元素中选择传感器. 在初始化时,它的作用。 当配置节点被更改时,会调用一个事件处理器,并为TypedInput设置了新类型.

zz
aditepare: 函数 () {
表示这个;
Const reporter = RED.nodes.node(本.reporter) ; 互联网档案馆的存檔,存档日期2013-12-21.

$("#node-input- sensers"). typed Input({type:" sensers"),类型: [{{}
值: “ 传感器”,
多个: 真
选项: 获取传感器Type 选项(RED.nodes.node(此.reporter))
[ [

RED.events.on('nodes: change',函数(node){
如果(节点. type QQ're reporter" QQ that.reporter QQ节点.id) {
$ ("# node- input-  seners"). 键入('types'), [{
值: “ 传感器”,
多个: 真
选项: 获取传感器Type 选项(RED.nodes.node (node.id))
· []);
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
* ;
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?

代码是正确的。 执行回话时我可不会出错

• 预期行为

类型输入应该更新, 但不会更新 。 当我在浏览器控制台上执行后续代码时,它就会起作用.

[JavaScript] $("#node-input- seners"). 输入('types', [{value:' sensers', 多重: true, options: [{value:'a', 标签:'a'],{value:'b', 标签:'b'},{value:'c', 标签:'c'}}];


当我读取了TypedInput的代码(见下文链接),我的猜测是,一个事件在"类型"函数中被放出,在事件处理器中不起作用. 调试时,我看到了一个例外 在那里"你"被扔。 不能再重复这个错误了

https://GitHub.com/node-red/node-red/blob/master/packages/node modules/%40node-red/editor-client/src/js/ui/common/typedInput.js#L956 (中文(简体) ).

但有工作来解决这个问题 设置Timeout。 但我似乎找不到一个固定。 Async召回也没用. 我猜这个虫子是"特质"

```2ZZ
RED.events.on('nodes: change',函数(node){
如果(节点. type QQ're reporter" QQ that.reporter QQ节点.id) {
设置超时( 函数 ()) {
$ ("# node- input-  seners"). 键入('types'), [{
值: “ 传感器”,
多个: 真
选项: 获取传感器Type 选项(RED.nodes.node (node.id))
· []);
*,300);
{\fn黑体\fs22\bord1\shad0\3aHBE\4aH00\fscx67\fscy66\2cHFFFFFF\3cH808080}你觉得呢?
* ;

如何复制行为 ! [更改不工作 edit 0] (https://user-images.githubusercontent.com/6877485/218859328-6d6e3dfc-04fd-4a3f-b21b-899aa5431785.gif) 页面存档备份,存于互联网档案馆. QQ 工作时段设置 [change work edit 0] (https://user-images.githubusercontent.com/6877485/218859671-49cf35de-f7ba-4400-adc9-7903cb510581.gif) (中文(简体) ).

示例流量

无回复( N)

环境

  • 节点-RED版本:3.0.2
  • Node.js版本:14.18.1和16.16(Docker)
  • npm版本:9.2.0
  • 平台/操作系统:窗口11和Docker
  • 浏览器:Chrome/Firefox

内容来源: node-red/node-red