我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Node-red怎么实现在线评语系统

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Node-red怎么实现在线评语系统

这篇文章主要介绍“Node-red怎么实现在线评语系统”,在日常操作中,相信很多人在Node-red怎么实现在线评语系统问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Node-red怎么实现在线评语系统”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

    Node-red简介与安装

    什么是Node-red

    简单来说,Node-Red是IBM公司开发的一个可视化的编程工具,在网页内编程,主要是拖拽控件,代码量很小。

    由于我平时工作偏向硬件,所以对这些华丽的前端技术技术不是很了解,但个人认为,node-red技术在搭建具备网络与图形化功能的上位机、编程入门方面有很强的先天优势,也可以拿来做物联网资源的扩展,或与树莓派搭配做网关功能。

    关于Node-red的中文教程,网上资源并不够多。笔者2018年在CSDN写过一系列文章,现在来看过于粗糙,而且界面老旧,有重新做一版的想法,但是苦于俗务太多,如果各位观众老爷有兴趣的话,请多多点赞转发支持,您的支持是我创作的动力。

    安装Node-red

    安装Dashboard

    Dashboard:仪表板,用于快速创建实施数据仪表板。它的安装方式与简介,请参考[官方教程]:

    笔者博客中有关于仪表板的安装与介绍,可以[移步阅读]:

    安装Base64,非必须

    Base64节点用于将对象打包/解包为base64格式,在评语系统中,用于将图片转为Base64格式,然后再显示。它的安装与介绍,请参考[官方教程].

    这一步是非必须的,因为如果图片是固定的,可以手动解码,然后放置在注入节点中,以避免图片依赖本地路径,造成部署不方便。后续有详细解释。

    编写评语文案

    个人感觉,编写文案其实是最困难的部分。以评价实习笔记为例,我设计了:内容、格式、体现、总结,4个评价维度,他们的具体评语如下:

    内容格式表现总结
    略显单薄,应该忽略略显凌乱,理性层次完整记录了实训的过程、数据与现象基本
    言简意赅,略感惜字如金结构分明,标题正文一目了然掌握了理论知识,完成了动手操作详细
    详略得当,符合笔记要求工工整整,层次分明听课认真,及时练习,总结到位充分
    准确翔实,真实记录了锻炼过程整齐划一,编排合理认真听讲,勤于思考,总结总结完全
    洋洋洒洒,理论与实践结合评论好看,方便阅读学习认真,积极上进,不懂就问深入
    面面俱到,详细记录了实习过程井然有序,逻辑清楚思维思考,提出问题,并主动寻找解决办法综合
    应有尽有,可以比范本贝联珠贯穿,完整、连贯且美观心思细腻,文笔流程,逻辑严谨彻底

    它的用法为:本实训手册内容   内容   ,格式    格式     ;从手册中,可以体现出该同学    体现    ,    总结    了解了实习工作的工程背景,方案和实践,充分考虑了社会、健康、安全、法律以及文化等多方面因素。

    例如:

    本实习手册内容详略得当,符合笔记要求,格式整洁美观,方便阅读,从手册中,可以体现出该同学‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍‍思维活跃,善于提问,并主动寻找解决办法‍‍‍‍‍‍‍‍‍‍‍‍‍‍,深入了解了实习工作的工程背景,方案和实践;充分考虑了社会、健康、安全、法律以及文化等多方面因素。

    写评语真的是搜肠刮肚,黔驴技穷,一滴个词都没有了。

    界面

    甭管功能怎么样,界面一定要好看。没办法,这就是个看脸的世界。

    整体页面规划如图:

    Node-red怎么实现在线评语系统

    在一个页面中,进行手册的点评。

    不同的评价维度采用不同的分组。每个分组列宽固定,均为单位“2”,每个单位默认是48像素。

    整体鼠标的移动轨迹为,从上到下,从左到右,老师依次点击每个评价维度的内容,到最右侧生成评语,然后到最右下角复制评语。

    配色网站

    界面是必须考虑美观的。公司的图标是红色的,仪表板默认的主题是Light,主题色是蓝色(可修改)。

    Node-red怎么实现在线评语系统

    我找了一个[配色网站,以红色为主题,进行色相配色,找到了几个自以为好看的颜色。

    Node-red怎么实现在线评语系统

    按钮

    规划好界面与配色后,可以用按钮来实现每个评价选项,不同评价维度有不同的分组,每个分组内从上到下,评价等级依次提升。设置4组按钮:

    Node-red怎么实现在线评语系统

    结果显示

    每一次点击按钮以后,都会发出一个数据包,而载荷正好是我们需要的字符串。每组按钮最下方,设置一个“text”节点显示当前评价维度的内容。

    Node-red怎么实现在线评语系统

    在最右侧,“生成”分组下,也是用一个“text”节点来显示完整的评语。

    Node-red怎么实现在线评语系统

    显示图片

    为了让界面美观一些,同时体现公司信息,因此要显示一张图片。图片本不是评价系统必备的,但是“如何使用Node-red显示图片”,中文搜索无法快速得到答案,此处稍微提一下。

    如果已经安装了base64节点,可以按照下图编写测试程序。

    Node-red怎么实现在线评语系统

    假如我在D盘放置了名为test.jpg的文件,点击注入节点,在http://localhost:1880/ui/地址的text页面下,即可看到以下现象:

    Node-red怎么实现在线评语系统

    代码如下,可自行导入观察效果。

    [{"id":"e90b9e5.8d1a76","type":"ui_template","z":"a27b80b1c2d45b59","group":"efcf5006.15dae","name":"Display image","order":4,"width":"6","height":"6","format":"\n","storeOutMessages":true,"fwdInMessages":true,"resendOnRefresh":false,"templateScope":"local","x":1000,"y":440,"wires":[[]]},{"id":"e15b65de.f75f98","type":"base64","z":"a27b80b1c2d45b59","name":"Encode","action":"","property":"payload","x":760,"y":440,"wires":[["e90b9e5.8d1a76"]]},{"id":"813f5fbc.785a7","type":"file in","z":"a27b80b1c2d45b59","name":"","filename":"D:test.jpg","format":"stream","chunk":false,"sendError":false,"encoding":"none","allProps":false,"x":540,"y":440,"wires":[["e15b65de.f75f98"]]},{"id":"2909d426.407b4c","type":"inject","z":"a27b80b1c2d45b59","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":370,"y":440,"wires":[["813f5fbc.785a7"]]},{"id":"efcf5006.15dae","type":"ui_group","name":"test","tab":"65324def.436554","order":8,"disp":true,"width":"6","collapse":false},{"id":"65324def.436554","type":"ui_tab","name":"test","icon":"dashboard","disabled":false,"hidden":false}]

    内嵌图片编码

    这种做法要求D盘必须有个test.jpg文件,我最后部署在云服务器上,懒得在云服务器中的D盘放一个图片(其实也没有D盘),而是把图片转为Base64编码,放在注入节点中。

    [有些网站]能将图片转为Base64编码,如下。Chrome浏览器也可以,具体教程请自行搜索。

    Node-red怎么实现在线评语系统

    然后把获取的Base64编码作为注入节点的载荷即可。

    Node-red怎么实现在线评语系统

    函数节点编写

    按下按钮会产生一个message,message相当于参数,传递给后边的函数节点。函数节点内部申请的所有变量,都是局部变量,在函数的调用结束后,局部变量的值就被释放了,无法保留。因此要用一种特殊的机制,来保存某个维度的打分信息,可以使用global,将参数设置为全局的。详细讲解可以参考[我的博客](https://yatao.blog.csdn.net/article/details/80751284)。

    Global全局传递参数

    在按钮节点后添加函数节点,用Global全局变量保留某个打分维度的信息。

    Node-red怎么实现在线评语系统

    数据拼接

    设置一个按钮,当按下以后,读取各个打分维度的信息,然后拼接字符串

    Node-red怎么实现在线评语系统

    在线复制功能

    至此已经实现了所有的功能,但是生成的结果复制起来比较麻烦。可以考虑增加在线复制的功能,这也是本系统最复杂的部分。

    我的想法是,找一个剪贴板的节点,向剪贴板节点输出文本,未果。

    或者应用Nodejs的机制,复制页面的内容,可能比较复杂,暂未尝试。

    我几乎可以确定,一定会用到Dashboard的Template节点,因为在此节点内可以使用代码实现较高定制化程度的功能。

    我以clipboard与Template为关键字,在官方的论坛中找到了这么一个[帖子],解决了问题

    Node-red怎么实现在线评语系统

    稍加修改,代码如下

    Node-red怎么实现在线评语系统

    第13行,将输入的内容设置为了载荷,

    第26行,通过输入数据的ID获取了内容,

    第29行,复制到剪贴板。

    第30行,用弹窗显示被复制的文本,我把弹窗关掉了。

    完整程序,来个合照。

    Node-red怎么实现在线评语系统

    没错,这是编程界面,只有“函数”节点“Template”节点内,编写少量代码,其它的节点都是拖拽编程,是不是很省心呢

    到此,关于“Node-red怎么实现在线评语系统”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

    免责声明:

    ① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

    ② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

    Node-red怎么实现在线评语系统

    下载Word文档到电脑,方便收藏和打印~

    下载Word文档

    猜你喜欢

    Node-red怎么实现在线评语系统

    这篇文章主要介绍“Node-red怎么实现在线评语系统”,在日常操作中,相信很多人在Node-red怎么实现在线评语系统问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Node-red怎么实现在线评语系统”的疑
    2023-06-29

    Java Online Exam在线考试系统怎么实现

    这篇文章主要介绍“Java Online Exam在线考试系统怎么实现”,在日常操作中,相信很多人在Java Online Exam在线考试系统怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Java
    2023-06-21

    Java怎么实现在线寄查快递系统

    小编给大家分享一下Java怎么实现在线寄查快递系统,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!介绍超级管理员:系统管理、用户管理、网点管理、运输点管理、快递员管理、网点申请管理(审核)、报价管理(时效报价)等。普通用户:
    2023-06-29

    Java怎么实现在线小说阅读系统

    本篇文章给大家分享的是有关Java怎么实现在线小说阅读系统,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。环境配置Jdk1.8 + Tomcat8.5 + mysql + Ecl
    2023-06-29

    Java怎样实现在线选课系统

    Java怎样实现在线选课系统,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、项目简述功能: 系统分为三个角色。最高权限管理员,学生,教师,包括 学生管理,教师管理,课程管理,
    2023-06-21

    浅析node怎么实现单点登录系统

    怎么实现单点登录系统?下面本篇文章给大家介绍一下使用node实现单点登录系统的方法,希望对大家有所帮助!
    2022-11-22

    PHP+MySQL怎么实现在线测试答题系统

    本篇内容介绍了“PHP+MySQL怎么实现在线测试答题系统”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!这个实例主要给大家介绍如何使用jQu
    2023-06-04

    怎么在linux系统中实现openmp多线程编程

    本篇文章给大家分享的是有关怎么在linux系统中实现openmp多线程编程,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。关键语法:代码如下:#inlcude #p
    2023-06-13

    Java怎么实现在线服装销售商城系统

    这篇文章主要介绍了Java怎么实现在线服装销售商城系统的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Java怎么实现在线服装销售商城系统文章都会有所收获,下面我们一起来看看吧。一、项目运行环境配置:Jdk1.8
    2023-06-29

    如何用Go语言和Redis实现在线支付系统

    如何用Go语言和Redis实现在线支付系统引言:随着电子商务的迅速发展,越来越多的人们选择在线支付来完成各种交易。而作为在线支付系统的核心重要组件之一,支付系统必须具备高效、安全、可靠的特性。本文将介绍如何使用Go语言和Redis来实现一个
    2023-10-27

    win10系统怎么实现无线同屏

    这期内容当中小编将会给大家带来有关win10系统怎么实现无线同屏,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。很多小伙伴都知道Windows10系统中有无线同屏的功能,可以把手机的内容投屏到电脑上,但是很
    2023-06-27

    如何使用Go语言和Redis实现在线考试系统

    如何使用Go语言和Redis实现在线考试系统概述:在线考试系统是一种实现在线考试的应用程序。通过使用Go语言和Redis数据库,我们可以构建一个高效、可扩展和可靠的在线考试系统。本文将介绍如何使用Go语言和Redis来设计和实现一个基本的在
    2023-10-26

    如何使用Go语言和Redis实现在线投票系统

    如何使用Go语言和Redis实现在线投票系统概述:在线投票系统是一个常见的应用场景,它可以用于各种场合,如选举、问卷调查、评选等。本文将介绍如何使用Go语言和Redis来实现一个简单的在线投票系统。我们将使用Go语言作为后端开发语言,Red
    2023-10-26

    怎么在R语言中实现线性回归

    本篇文章为大家展示了怎么在R语言中实现线性回归,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在统计学中,线性回归(Linear Regression)是利用称为线性回归方程的最小平方函数对一个或多个
    2023-06-15

    C语言怎么实现图书管理系统

    要实现一个图书管理系统,可以按照以下步骤进行:1. 定义图书结构体:首先要定义一个图书的结构体,包括图书的编号、名称、作者等信息。```ctypedef struct {int id;char title[100];char author[
    2023-08-09

    c语言成绩查询系统怎么实现

    要实现一个C语言成绩查询系统,你可以按照以下步骤进行:1. 定义学生结构体:首先,你需要定义一个学生的结构体,其中包括学生的学号、姓名和成绩等信息。```ctypedef struct {int studentID;char name[50
    2023-08-09

    在Linux系统上怎么实现IP转发

    这篇文章主要讲解了“在Linux系统上怎么实现IP转发”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“在Linux系统上怎么实现IP转发”吧!大家好,今天我们学习一下在 Linux 上用 ip
    2023-06-12

    编程热搜

    • Python 学习之路 - Python
      一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
      Python 学习之路 - Python
    • chatgpt的中文全称是什么
      chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
      chatgpt的中文全称是什么
    • C/C++中extern函数使用详解
    • C/C++可变参数的使用
      可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
      C/C++可变参数的使用
    • css样式文件该放在哪里
    • php中数组下标必须是连续的吗
    • Python 3 教程
      Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
      Python 3 教程
    • Python pip包管理
      一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
      Python pip包管理
    • ubuntu如何重新编译内核
    • 改善Java代码之慎用java动态编译

    目录