簡體   English   中英

如果在Dart中聲明?

[英]If statement in Dart?

因此,我在Dart中使用google maps API進行了一個項目,但我遇到了一個問題,我真的不知道該如何解決。 問題是我有這個If語句:

   if (querySelector("#input") == "202") {
      final location = (new InfoWindow(new InfoWindowOptions())
          ..position = new LatLng(40.316002, -76.034599)
          ..content = 'room 202'
      );
    }

if語句的功能非常不言自明(使用Google Maps for Dart),但我似乎無法做到這一點。 這是html部分:

 <form><p id="rly">
Enter room number</p><br>
<input type="text" id="input">
</form>

有什么建議或想法嗎? 先感謝您。

您的問題對我來說還不是很清楚,但是這條線很可能沒有達到您的期望

if (querySelector("#input") == "202") {

querySelector("#input")返回具有id inputElement 元素永遠不等於202 也許你是說

if ((querySelector("#input") as InputElement).value == "202") {

不幸的是,您沒有提供足夠的代碼來指示正在發生的事情。 根據您提供的內容,您似乎並沒有約束輸入元素的任何更改或來自表單的任何提交。 您在其他答案的注釋中的屏幕截圖也表明了這一點,因為您的表單似乎已完全提交。

if支票的代碼在哪里? 您是否正在使用Polymer或Angular之類的軟件包? (他們可以幫助數據/事件綁定)。 但是,假設您不是,則需要設置事件偵聽器。 在這種情況下,我們將其放置在form元素上,因為它只會在我們在輸入字段中按Enter鍵(或者如果有的話,提交按鈕)時才運行代碼。 首先,對HTML進行一些更改以向表單添加ID:

<form id="numForm"><p id="rly">
Enter room number</p><br>
<input type="text" id="input">
</form>

現在,在頁面加載后將其綁定到我們的main()方法中:

main() {
  // ...
  // Whatever other code you have

  // This sends any 'submit' events on the form to the updateMap method.
  querySelector('#numForm').onSubmit.listen(updateMap);
}

void updateMap(Event e) {
  var num = (querySelector('#input') as InputElement).value;
  if(num == '202') {
    // .. Same as before, assuming the Google Maps stuff is right
  }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM