node-red/packages/node_modules/@node-red/nodes/locales/zh-CN/sequence/17-split.html

134 lines
8.1 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!--
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/x-red" data-help-name="split">
<p>将一条消息拆分为一系列消息</p>
<h3>输入</h3>
<dl class="message-properties">
<dt>payload<span class="property-type">object | 字符串 | 数组 | buffer</span></dt>
<dd>节点的行为由<code>msg.payload</code>:
<ul>
<li><b>字符串</b>/<b>buffer</b> - 使<code>\n</code></li>
<li><b>数组</b> - </li>
<li><b>object</b> - /</li>
</ul>
</dd>
</dl>
<h3>输出</h3>
<dl class="message-properties">
<dt>parts<span class="property-type">object</span></dt>
<dd>此属性包含有关如何将消息与原始消息分开的信息如果传递给<b>join</b>
<ul>
<li><code>id</code> - </li>
<li><code>index</code> - </li>
<li><code>count</code> - </li>
<li><code>type</code> - -///buffer</li>
<li><code>ch</code> - buffer</li>
<li><code>key</code> - <code>msg.topic</code></li>
<li><code>len</code> - 使</li>
</ul>
</dd>
</dl>
<h3>详细</h3>
<p>在使用<b>join</b>使</p>
<p>它使用<code>msg.parts</code></p>
<h4>流媒体模式</h4>
<p>该节点还可以用于重排消息流例如发送换行符终止命令的串行设备可能会传递一条消息并在其末尾带有部分命令 流模式此节点将拆分一条消息并发送每个完整的段如果末尾有部分片段则该节点将保留该片段并将其添加到收到的下一条消息之前</p>
<p>在此模式下运行时该节点将不会设置<code>msg.parts.count</code><b>join</b>使</p>
</script>
<script type="text/x-red" data-help-name="join">
<p>将消息序列合并为一条消息.</p>
<p>共有三种模式</p>
<dl>
<dt>自动模式</dt>
<dd><b>split</b></dd>
<dt>手动模式</dt>
<dd>手动地以各种方式合并消息序列</dd>
<dt>列聚合模式</dt>
<dd>对消息列中的所有消息应用表达式以将其简化为单个消息</dd>
</dl>
<h3>输入</h3>
<dl class="message-properties">
<dt class="optional">parts<span class="property-type">object</span></dt>
<dd>使用自动模式时所有的消息都应包含此属性<b>split</b>
<ul>
<li><code>id</code> - </li>
<li><code>index</code> - </li>
<li><code>count</code> - </li>
<li><code>type</code> - -///buffer</li>
<li><code>ch</code> - buffer</li>
<li><code>key</code> - <code>msg.topic</code>/li>
<li><code>len</code> - 使</li>
</ul>
</dd>
<dt class="optional">complete</dt>
<dd>如果设置则节点将以其当前状态发送其输出消息</dd>
</dl>
<h3>详细</h3>
<h4>自动模式</h4>
<p>自动模式使用传入消息的<code>parts</code>使<b>split</b></p>
<h4>手动模式</h4>
<p>设置为以手动模式时该节点能以各种不同的方法来处理消息</p>
<ul>
<li><b>字符串</b><b></b>-</li>
<li><b>数组</b> - </li>
<li><b>/值对象</b> - 使</li>
<li><b>merged object</b> - </li>
</ul>
<p>输出消息的其他属性都取自发送结果前的最后一条消息</p>
<p>可以用<i>计数</i></p>
<p>可以用<i>超时</i></p>
<p>如果收到设置了<code>msg.complete</code></p>
<p>如果收到设置了<code>msg.reset</code></p>
<h4>列聚合模式</h4>
<p>选择列聚合模式时将表达式应用于组成消息列的每条消息并使用聚合值组成一条消息</p>
<dl class="message-properties">
<dt>初始值</dt>
<dd>累积值的初始值(<code>$A</code>)</dd>
<dt>聚合表达式</dt>
<dd>序列中的每个消息调用的JSONata表达式结果将作为累加值传递到表达式的下一个调用在表达式中可以使用以下特殊变量
<ul>
<li><code>$A</code>: </li>
<li><code>$I</code>: </li>
<li><code>$N</code>: </li>
</ul>
</dd>
<dt>最终调整式子</dt>
<dd>可选的JSONata表达式在将聚合表达式应用于序列中的所有消息之后应用在表达式中可以使用以下特殊变量
<ul>
<li><code>$A</code>: </li>
<li><code>$N</code>: </li>
</ul>
</dd>
<p>默认情况下按顺序从序列的第一条消息到最后一条消息应用聚合表达式也可以选择以相反的顺序应用聚合表达式</p>
</dl>
<p><b>例子</b>
<ul>
<li><b>聚合表达式</b>: <code>$A+payload</code></li>
<li><b>初始值</b>: <code>0</code></li>
<li><b>最终调整式</b>: <code>$A/$N</code></li>
</ul>
</p>
<h4>储存讯息</h4>
<p>该节点将在内部缓存消息以便跨序列工作运行时设置<code>nodeMessageBufferMaxLength</code></p>
</script>