mirror of
https://github.com/node-red/node-red.git
synced 2023-10-10 13:36:53 +02:00
65 lines
3.8 KiB
HTML
65 lines
3.8 KiB
HTML
|
<!--
|
||
|
Copyright JS Foundation and other contributors, http://js.foundation
|
||
|
|
||
|
Licensed under the Apache License, Version 2.0 (the "License");
|
||
|
you may not use this file except in compliance with the License.
|
||
|
You may obtain a copy of the License at
|
||
|
|
||
|
http://www.apache.org/licenses/LICENSE-2.0
|
||
|
|
||
|
Unless required by applicable law or agreed to in writing, software
|
||
|
distributed under the License is distributed on an "AS IS" BASIS,
|
||
|
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||
|
See the License for the specific language governing permissions and
|
||
|
limitations under the License.
|
||
|
-->
|
||
|
|
||
|
<script type="text/html" data-help-name="function">
|
||
|
<p>Une fonction JavaScript à exécuter sur les messages reçus par le noeud.</p>
|
||
|
<p>Les messages sont transmis sous la forme d'un objet JavaScript appelé <code>msg</code>.</p>
|
||
|
<p>Par convention, il aura une propriété <code>msg.payload</code> contenant
|
||
|
le corps du message.</p>
|
||
|
<p>La fonction est censée renvoyer un objet message (ou plusieurs objets message), mais peut choisir
|
||
|
de ne rien retourner pour stopper un flux.</p>
|
||
|
<p>L'onglet <b>Au démarrage</b> contient du code qui sera exécuté à chaque démarrage du noeud.
|
||
|
L'onglet <b>À l'arrêt</b> contient le code qui sera exécuté lorsque le noeud sera arrêté.</p>
|
||
|
<p>Si le code 'Au démarrage' renvoie un objet Promise (promesse), le noeud ne commencera pas à gérer les messages
|
||
|
jusqu'à ce que la promesse soit résolue.</p>
|
||
|
<h3>Détails</h3>
|
||
|
<p>Voir la <a target="_blank" href="http://nodered.org/docs/writing-functions.html">documentation en ligne</a>
|
||
|
pour plus d'informations sur les fonctions d'écriture.</p>
|
||
|
<h4>Envoi de messages</h4>
|
||
|
<p>La fonction peut envoyer les messages qu'elle souhaite transmettre aux noeuds suivants
|
||
|
dans le flux, soit avec <code>return msg</code> soit appeler la fonction <code>node.send(messages)</code>.</p>
|
||
|
<p>Il peut renvoyer/envoyer :</p>
|
||
|
<ul>
|
||
|
<li>un seul objet de message - transmis aux noeuds connectés à la première sortie</li>
|
||
|
<li>un tableau d'objets de message - transmis aux noeuds connectés aux sorties correspondantes</li>
|
||
|
</ul>
|
||
|
<p>Remarque : Le code 'Au démarrage' est exécuté lors de l'initialisation des noeuds. Par conséquent, si <code>node.send</code> est appelé dans l'onglet Au démarrage, les noeuds suivants peuvent ne pas être en mesure de recevoir le message.</p>
|
||
|
<p>Si un élément du tableau est lui-même un tableau de messages, plusieurs
|
||
|
messages sont envoyés à la sortie correspondante.</p>
|
||
|
<p>Si null est renvoyé, seul ou en tant qu'élément du tableau, aucun
|
||
|
message n'est envoyé.</p>
|
||
|
<h4>Journalisation et gestion des erreurs</h4>
|
||
|
<p>Pour enregistrer des informations ou signaler une erreur, les fonctions suivantes sont disponibles :</p>
|
||
|
<ul>
|
||
|
<li><code>node.log("Message pour le journal")</code></li>
|
||
|
<li><code>node.warn("Attention")</code></li>
|
||
|
<li><code>node.error("Erreur")</code></li>
|
||
|
</ul>
|
||
|
</p>
|
||
|
<p>Le noeud Capturer peut également être utilisé pour gérer les erreurs. Pour invoquer un noeud Capturer,
|
||
|
passer <code>msg</code> comme deuxième argument à <code>node.error</code> :</p>
|
||
|
<pre>node.error("Erreur",msg);</pre>
|
||
|
<h4>Accéder aux informations sur les noeuds</h4>
|
||
|
<p>Les propriétés suivantes sont disponibles pour accéder aux informations sur le noeud:</p>
|
||
|
<ul>
|
||
|
<li><code>node.id</code> - identifiant du noeud</li>
|
||
|
<li><code>node.name</code> - nom du noeud</li>
|
||
|
<li><code>node.outputCount</code> - nombre de sorties du noeud</li>
|
||
|
</ul>
|
||
|
<h4>Utilisation des variables d'environnement</h4>
|
||
|
<p>Les variables d'environnement sont accessibles à l'aide de <code>env.get("MA_VAR__ENV")</code>.</p>
|
||
|
</script>
|