我正在嘗試爲現有項目使用節點紅色儀表板UI。其中我想使用'下拉'作爲選擇機制。我從SQLite數據庫中獲取'device'名稱和'device_id',並且使用了DEBUG消息來確保正確地發生。 根據儀表板下拉信息 -節點紅色儀表板 - 下拉列表問題
*「可以通過輸入包含數組的msg.options來配置選項,如果只是文本,則該值將與標籤相同,否則可以通過使用「值」 對: 「標籤」 的對象 例如 [ 「選擇1」, 「選擇2」,{ 「選擇3」: 「3」}]
我已經嘗試了各種方法來填充「選項'與期望的雙但是它不會出現按預期方式工作提到陣列以下代碼是使用函數節點的示例:
var newmsg = msg;
newmsg.options = [];
var temp1, temp2;
for (var i = 0; i < msg.payload.length; i++) {
temp1 = msg.payload[i].id;
temp2 = msg.payload[i].name;
newmsg.options[i] = {temp2 : temp1};
}
return newmsg;
(NB。 temp1中和TEMP2是因爲它不會單線分配中解析)
這將產生在調試窗口中的下列對象:
topic: "select name, id from devices where 1;"
payload: array[186]
[0 … 9]
0: object
name: "Ron"
id: 29
1: object
name: "Deck Motion TRx"
id: 51
.
.
.
options: array[186]
[0 … 9]
0: object
temp2: 29
1: object
temp2: 51
2: object
temp2: 54
。 。 。 任何人都可以告訴我我要去哪裏嗎? 感謝
您沒有看到下拉列表,因爲您的代碼輸出不是您想要的輸出嗎? – user2917823
@ user2917823很容易忘記其他人沒有經過思考過程。道歉。下面的答案解釋了我做錯了什麼,即使我的解釋缺乏描述。 – user2307189