
Node-Red的Uibuilder允許輕鬆創建數據驅動的前端Web應用程序。
它包含許多輔助功能,這些功能可以減少或消除為構建數據驅動的Web應用程序和與Node-Red集成的用戶界面編寫代碼的需求。
筆記
Uibuilder觸發了流程記分卡條目中的質量警告。
“依賴性數量”為> 6-這是由於Uibuilder中的大量功能所致,並且是預期的。即便如此,V7只有7個依賴項。將來將在以後的版本中刪除1個。
最好使用Node-Red的調色板管理器安裝Uibuilder。
要從您的節點紅服務器上的命令行手動安裝:
cd ~ /.node-red
npm install node-red-contrib-uibuilder要安裝舊版本,請提供主要版本編號:
cd ~ /.node-red
npm install node-red-contrib-uibuilder@v5要安裝開發分支,請從GitHub安裝。分支名稱是未來的版本號,請檢查GitHub以獲取可用分支:
cd ~ /.node-red
npm install totallyinformation/node-red-contrib-uibuilder#v7.1.0如果手動安裝,則需要重新啟動節點紅色。
當前的ChangElog包含每個版本的所有更改和需求詳細信息。
可以在先前的更改文檔中找到較舊的更改:ChangElog-V5,ChangElog-V5,ChangElog-V3/V4,ChangElog-V2和ChangElog-V2。
安裝後,以下是典型的簡單流程。
uibuilder節點。打開其設置,並給它一個“ URL”,用作識別名稱。關閉設置,然後單擊部署按鈕。uibuilder節點的設置,然後單擊“打開”按鈕以查看結果網頁。現在,您準備編輯前端HTML/JavaScript/CSS(如果需要),並在Node-red中添加邏輯以提供輸入和處理輸出。您也可以使用Uibuilder的無代碼功能也可以創建UI,也可以使用UI。
請參閱文檔和介紹視頻中的初學演練,以獲取更多幫助。還要嘗試內置的示例流。
在Node-Red中,使用漢堡菜單。單擊導入。點擊示例。選擇Node-red-contrib-uibuilder文件夾,然後選擇一個示例。
Uibuilder中的模板功能提供了各種配置的工作前端代碼。
其他示例可以在節點紅色流站點和Uibuilder Wiki上找到。另請參閱常見問題解答,並在節點紅色論壇上回答問題。
請參閱文檔網站。即使沒有Internet連接,也可以從Uibuilder節點內部訪問這一點。
YouTube上有一個“官方”視頻教程的庫。其他人也產生了與Uibuilder相關的內容。
提出問題或討論可能增強功能的最佳場所是節點紅色論壇。
或者,使用GitHub問題日誌來提出問題或貢獻建議和增強,以及GitHub討論頁面,以獲取一般問題,建議等。
uibuilder用於節點紅色
? UI庫模塊由UIBUILDER-可用於將UI標準配置JSON轉換為HTML的獨立使用
?節點 - red-contrib-moment-節點用於使用that the the the node-red中的日期/時間處理庫
? node-red的測試節點 - 一些節點紅色的測試節點,可以幫助您了解所有內容的工作方式
? HOTNIPI量規Web組件 - 一個非常漂亮的量規組件。與Node-Red,Uibuilder或獨立的工作
?實驗性網絡組件 - 具有一些節點紅色和UIBUILDER特定的增強功能,但也可以很好地工作
?陣列grouper-獨立函數重塑一系列對象
Uibuilder的目的是:
Uibuilder的核心特徵:
uibuilder節點實例。每個實例允許創建許多網頁和子文件夾,以便於管理。uibuilder節點實例都提供節點紅服務器(後端)和瀏覽器(前端)UI代碼之間的私有2向通信通道。 Uibuilder繼續擴展其無代碼功能。 uib-element , uib-tag和uib-update節點提供了用於創建和更新數據驅動Web UI的無代碼方法。
uib-element接收簡單的數據並輸出配置數據。然後可以通過uibuilder節點將其發送到前端。另外,它可以保存,並在初始負載中使用的結果。 Uibuilder v6.1中提供了幾種簡單的選項,例如表和列表,將來將在以後的版本中提供其他元素和結構。 Uibuilder前端客戶端獲取配置信息,並動態構建HTML元素並將其插入到網頁上(或根據需要刪除/更新)。
雖然這不是最有效的處理方法(因為更新大部分是替代整個元素,而這些元素對於大桌子(例如大表)來說可能非常大),但從創作的角度來看,它非常有效。因此, uib-update節點為元素更新和更改特定屬性和“插槽”內容提供了一種更具針對性的方法。
然後, uib-tag節點使您可以創建任何單個HTML元素,因此覆蓋了uib-element可能還沒有覆蓋的所有內容。這甚至可以與Web組件一起使用,即HTML的香草/JavaScript本機對HTML的增強功能。
重要的是要注意,這種方法不需要前端,第三方框架(例如Vuejs或React)!一切都使用了皮膚下的香草HTML,JavaScript和CSS,因此與當前和未來的網絡標準兼容。
uib-element輸出的數據是一種格式,您可以在Node-red中使用,甚至在需要時在前端代碼中使用。它描述了一組HTML UI元素,但不需要您實際編寫HTML代碼。配置模式非常靈活,甚至允許您從外部文件加載配置數據,HTML,腳本和新的ECMA模塊/組件。
前端客戶端內置的架構和UI創建器功能是專門設計用於使用當前和未來HTML標準的,以避免使用第三方Party前端框架時通常遇到的各種問題(例如,主要版本更改迫使所有工具的重寫迫使重寫您的工具的重寫)。因此,應支持ES模塊,ECMA組件和未來的ECMA版本。
現在, ui.js庫也可以供任何人在自己的項目中使用,並且在沒有Uibuilder的情況下完全獨立地工作。它也被烘烤到uib-html節點中,該節點將低代碼配置從Node-Red內部轉換為HTML。
Uibuilder將繼續獨立於前端框架,儘管它也將繼續盡可能兼容,以便可以與它一起使用任何所需的框架。
package.json中定義的npm run腳本。仍然希望構建一個頁面構建器功能,以便沒有編碼技能的人可以構建出色的數據驅動Web應用程序。
fs-extra開始,而偏向於本機承諾的FS庫。緊隨其後的是arun 。uib-element節點嘗試一下。uibuilder.iife.js , uibuilder.esm.js )提供了與節點-RED和MSG事件處理的連接性以及一些輔助功能。ui.js庫! 如果您想為此節點做出貢獻,則可以通過github聯繫完全信息,也可以在GitHub問題日誌中提出請求。
歡迎使用代碼和文檔的拉請請求,Wiki向新的條目和更正開放(但是,如果您進行更改,請告訴我)。
有關更多信息,請參考貢獻指南。
您還可以通過贊助開發來支持Uibuilder的開發。
GitHub贊助,貝寶贊助
多虧了每個人,許多其他人都提出了想法和建議。
請還請查看我的博客,有關它的廣泛性,它具有有關各種主題的信息,主要是與Node-red有關的信息。