Angular 2获取输入元素值

新手上路,请多包涵

如何使用 ionic 2 获取 html 元素值

在我的html代码下面

 <div class="messagesholder" *ngFor="let chat of chatval | orderby:'[date]'" >
   <div *ngIf="chat.sender == currentuser || chat.receiver == currentuser">
    <div  *ngIf="chat.date" style="text-align: center;" >
           <p style="font-size:9px;" id="amount" #amount>{{chat.date | amDateFormat:'LL'}}</p>
           <input #myname [ngModel]="range" (ngModelChange)="saverange($event)"/>
         <input #myname type="text" value={{chat.date}}>
    </div>
   </div>
   <div class="message" *ngIf="chat.sender == currentuser || chat.receiver == currentuser" [ngClass]="{'me': currentuser == chat.sender}">
          <div class='image' *ngIf="chat.path" >
            <img *ngIf="chat.path" [src]="chat.path"/><br>
            <span *ngIf="chat.path_text">{{chat.path_text}}</span>
            <span style="font-size:9px;">{{chat.date | amDateFormat:'hh:mmA'}}</span>
          </div>
           <div *ngIf="chat.message_text">
           <span>{{chat.message_text}}</span>
           <span style="font-size:9px;">{{chat.date | amDateFormat:'hh:mmA'}}</span>
           </div>
    </div>

在我的 ts 文件下面

import { Component,Inject,ViewChild,ElementRef,AfterViewInit} from '@angular/core';

export class ChatPage implements AfterViewInit {
  @ViewChild('myname') input:ElementRef;
  constructor(public modalCtrl: ModalController,public navCtrl: NavController) {}
   ngAfterViewInit() {
    console.log(this.input.nativeElement.value);
    }
  }

重复相同的日期值。我希望不重复相同的日期值。

因为我会检查两个变量。

所以我需要 chat.date 值。因为我绑定了 input 的值。但我无法获取 input 元素的值。

我收到这个错误

无法读取未定义的属性“nativeElement”

如何解决此问题。或以任何其他方式找到解决方案。

谢谢

原文由 Anivaishu 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 694
1 个回答

如果您使用指令试试这种方式:

 private el: HTMLInputElement;
constructor(private _elementRef: ElementRef) {
    this.el = this._elementRef.nativeElement;
}

ngOnInit(): void {
    console.log(this.el.value);
}

原文由 Dova 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进