放入流中后,我在node-red中的自定义节点不可用

问题描述

我试图在Node-red中创建一个自定义节点,但是当我将该节点放入流中时,该节点“卡住了”并且无法使用。来自控制台(F12)的错误是:

\documentclass[9pt]{beamer}
\mode<presentation> {
\usefonttheme{serif}
\usetheme{Madrid}
\definecolor{BlueGreen}{cmyk}{0.85,0.33,0}
\makeatletter
\colorlet{beamer@blendedblue}{BlueGreen!120}
\makeatother
}

\usepackage{booktabs} 
%\usepackage{caption}


\hypersetup{pdfnewwindow}
\setbeamertemplate{caption}[numbered]
\setbeamerfont{frametitle}{size=\footnotesize}
\setbeamertemplate{navigation symbols}{}
\setbeamercolor{postit}{bg=violet!110}
\usepackage{ragged2e}   %new code

\addtobeamertemplate{block begin}{}{\justifying} 


\usepackage{natbib}

\usepackage{textpos}

\begin{document}

\begin{frame} \frametitle{\textbf{{\Large Objective}}}
    \begin{itemize}
        \justifying
            \item This package gives you easy access to the Lorem Ipsum dummy text; an option is available to separate the paragraphs of the dummy text. This text \cite{kumar2015method}.
        
        \item The long equation is:                        
    \end{itemize}
\end{frame}

\begin{frame}
\bibliography{ref}
\bibliographystyle{plainnat}
\end{frame}

\end{document}

我已尽力简化了节点,但仍然无法正常工作。这是我的代码

findProtocol.js:

Uncaught TypeError: Cannot read property 'hasOwnProperty' of undefined
at HTMLdivelement.drop (red.min.js:16)
at t.<computed>.<computed>._trigger (vendor.js:10)
at t.<computed>.<computed>._drop (vendor.js:15)
at t.<computed>.<computed>._drop (vendor.js:10)
at t.<computed>.<computed>.<anonymous> (vendor.js:15)
at Function.each (vendor.js:2)
at Object.drop (vendor.js:15)
at t.<computed>.<computed>._mouseStop (vendor.js:13)
at t.<computed>.<computed>._mouseStop (vendor.js:10)
at t.<computed>.<computed>._mouseUp (vendor.js:13)

findProtocol.html:

module.exports = function(RED) {
function FindProtocolNode(config) {
    RED.nodes.createNode(this,config);
    var msg = { payload:"hi" }
    this.send(msg);
}
RED.nodes.registerType("findProtocol",FindProtocolNode);
}

package.json:

<script type="text/javascript">
RED.nodes.registerType('findProtocol',{
    category: "Rpi RF Tools",outputs: 1,label: "Find Protocol"
});
</script>

有什么想法吗?

解决方法

我怀疑编辑器希望您的节点在其HTML定义中具有一个defaults属性,即使它是一个空属性也是如此。

<script type="text/javascript">
RED.nodes.registerType('findProtocol',{
    category: "Rpi RF Tools",outputs: 1,label: "Find Protocol",defaults:  {}
});
</script>

https://nodered.org/docs/creating-nodes/properties

至少,您的节点应具有name属性,以便用户能够在编辑器中为其指定自定义名称/标签。