Script Text 脚本文本

Script Text 是 Text(文本)类行为之一,可用一小段 JavaScript 来决定组件最终显示的文字。它不是直接显示某个标签的原值,而是先读一个或多个标签、做好计算和判断,再把结果拼成一句完整文本显示出来。当需要带单位、带小数位、或把几个值合并成一句话时就用它;如果只是把单个标签原样显示,用 Tag Text 更简单。

文本

文本: Script Text 脚本文本

用一段脚本拼接出组件最终显示的文本:先在 Definition 里读标签、做计算,再在 Text 里返回要显示的字符串。适合需要带单位、格式化或多值组合的动态文本。

功能说明

Script Text 是 Text(文本)类行为之一,可用一小段 JavaScript 来决定组件最终显示的文字。它不是直接显示某个标签的原值,而是先读一个或多个标签、做好计算和判断,再把结果拼成一句完整文本显示出来。当需要带单位、带小数位、或把几个值合并成一句话时就用它;如果只是把单个标签原样显示,用 Tag Text 更简单。

使用方法:编辑器里要填的字段

Script Text 的编辑器主要有四个字段。Definition 做准备(读标签、定义变量、算中间值),Text 返回最终要显示的字符串。Text 是表达式位置:只返回一个值、不要放 fetch/setTimeout 这类异步代码。

  • Definition:准备区。读标签、定义变量、做中间计算(可多行)。
  • Text:输出区。返回最终显示的字符串(一个值即可)。
  • Active:行为是否生效(启用/关闭这条文本行为)。
  • Quality Border:按通信质量给边框上色,质量好用 GOOD 色、质量坏用 BAD 色;这里的质量只代表通信好坏,不是工艺值或报警状态。
// Definition
var pressure = ReadTagDouble("Device.TAGNAME", 0.0);

// Text
"压力:" + pressure.toFixed(1) + " bar"

适用场景

需要在一个文本框里展示经过加工的动态信息时用它。

  • 显示带单位、带固定小数位的测量值,如“压力:3.2 bar”。
  • 把多个标签合成一句话,如“泵1 运行 / 转速 1450 rpm”。
  • 按条件输出不同文字,如运行时显示“运行中”、停机时显示“已停止”。

易错点

Text 字段是“只返回一个值”的表达式位置,不能当成完整脚本来写。

  • 不要在 Text 里放 fetch、setTimeout 这类异步代码,它需要立即得到一个值;这类逻辑放到 Page Script/Click Script 等脚本体里。
  • 复杂的读取与计算放在 Definition,Text 尽量只做最终拼接。
  • 读标签务必用带引号的标签名和默认值,如 ReadTagDouble("Device.TAGNAME", 0.0),避免裸写标签名。
  • Quality Border 只反映通信质量(good/bad),不要拿它当工艺判断。
Script Text 脚本文本行为编辑器
图示 1: Script Text 编辑器

在 Definition 里读标签做计算,在 Text 里返回最终要显示的字符串。