首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用使用角度6中组件交互的事件来用文本框替换文本?

如何使用使用角度6中组件交互的事件来用文本框替换文本?
EN

Stack Overflow用户
提问于 2018-10-23 12:22:57
回答 1查看 430关注 0票数 1

我已经创建了a按钮,我希望单击它来显示文本框,它替换了我从api获得的现有文本。

trnmnt-name.copmonent.ts

代码语言:javascript
复制
export class TrnmntNameComponent implements OnInit {

      @Output() public trnameEvent = new EventEmitter<any>();
      constructor(){}
    ngOnInit(){
    }
    trEvent(){
        this.trnameEvent.emit("Put text box here"); 
      }
    }

名为.component.html

代码语言:javascript
复制
<div class="TrnmtName">
      Hello There 
      <button type="submit" (click)="trEvent()" >Edit</button>  
</div>

tournament.component.ts

代码语言:javascript
复制
export class TournamentComponent implements OnInit {


  public message:"";
   constructor(){}

  ngOnInit() {
  }
  recieveMsg($event)
  {
    this.message = $event

  }
}

tournament.component.html

代码语言:javascript
复制
<div>
{{message}}
        <app-trnmnt-name (trnameEvent)="recieveMsg($event)"[trname]="tournamentdata?.tournament?.name"></app-trnmnt-name>
</div>

解决这个问题的任何解决方案

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-10-23 13:48:13

你得做这样的事。span中的(click)事件将转换为editingOn = true,这将用输入框替换文本。单击“保存”按钮将调用save()并打开editingOn=false

代码语言:javascript
复制
  <ng-container *ngIf="!editingOn; else notEditing">
         <p><span (click)="editingOn=!editingOn">{{yourTextModel}}</span></p>
    </ng-container>
    <ng-template #notEditing>
        <input type="text" [(ngModel)]="yourTextModel" [ngModelOptions]="{standalone: true}">
        <button type="button" (click)="save();editingOn=!editingOn">Save</button>
    </ng-template>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52948991

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档