一個(gè)詞:國家。您的 HTML 頁面沒有顯示正確的按鈕顏色,因?yàn)槟鷽]有在頁面刷新之間維護(hù)狀態(tài)。就目前而言,即使您在燈已經(jīng)亮起時(shí)加載頁面,它仍然不會(huì)向您顯示綠色按鈕。最簡(jiǎn)單的解決方法是使用 JS 維護(hù) cookie 或本地存儲(chǔ)中的燈光狀態(tài),在頁面加載時(shí)讀取此狀態(tài),然后為按鈕顯示適當(dāng)?shù)念伾?/ on clicking the button, do this:localStorage.setItem('isLightOn', '1');// and on page load, do this:if (localStorage.getItem('isLightOn') === '1') { $('button').addClass('selected');} else { $('button').removeClass('selected');}這樣做的缺點(diǎn)是它不能根據(jù)服務(wù)器反映燈光的當(dāng)前狀態(tài)。為了始終在頁面中顯示正確的燈光狀態(tài),您需要一種機(jī)制來從服務(wù)器查詢燈光的當(dāng)前狀態(tài)。然后您可以從服務(wù)器讀取狀態(tài),然后顯示相應(yīng)的 HTML。您甚至可以將其放入索引文件中。調(diào)用它index.php并使用與您的 中相同的內(nèi)容index.html,并添加一些 PHP:<?php # Let's assume this returns `true` when light is on, and `false` is it's off. $lightState = @file_get_contents('http://1.1.1.1/cgi-bin/output?username=abcd&password=cdef&action=read&pin=relay'); if ($lightState == true):?> <button class="button selected">Lights On</button><?php else:?> <button class="button">Lights On</button>我可能對(duì)語法有點(diǎn)生疏,但這就是總體思路。希望有幫助!
Vue,帶有 true/false 布爾值的 v-select 組件
江戶川亂折騰
2023-08-10 15:53:29