gpt4 book ai didi

angular - ionInput 和 ionChange 之间的显着差异

转载 作者:太空狗 更新时间:2023-10-29 17:43:43 26 4
gpt4 key购买 nike

问。 (ionInput)(ionChange) 有什么区别?在什么情况下,我应该选择其中之一?

我已经尝试了如下所示的两种代码,它给出的结果与我预期的相同。


使用 ionInput 事件的示例代码

<ion-searchbar type="text" maxlength="18" placeholder="Search" debounce="0" 
[(ngModel)]="usernameText" (ionInput)="findUserWithUsername()"></ion-searchbar>

使用 ionChange 事件的示例代码

<ion-input type="text" maxlength="18" placeholder="Search" clearInput
[(ngModel)]="usernameText" (ionChange)="findUserWithUsername()"></ion-input>

最佳答案

答案是:这取决于您使用的是什么组件

首先,你需要知道什么是ionInputionChange。是EventEmitter它在每个组件中定义。所以两个组件之间会有所不同。 ion-tabsionChange ,只要选定的选项卡发生变化,它就会发出。 ion-input 具有 ionChange,只要输入值发生变化,它就会发出。所以这些是完全不同的。

其次,并非所有组件都有ionInput。与ionChange相同。ion-input只是只有ionInput。但是 ion-searchbar 两者都有。

最后,找出ion-searchbarionInputionChange的区别。让我们创建一个小测试:
home.html 中:

<ion-searchbar placeholder="Search" debounce="0" (ngModel)]="searchText" (ionChange)="ionChange()" (ionInput)="ionInput()"></ion-searchbar>

home.ts 中:

searchText = "111";
ionViewDidLoad(){
//Change the searck value after 2s the page loaded
setTimeout(()=>{
console.log("change from the code");
this.searchText = "222";
},2000)
}

当用户在文本框中输入时,两个事件都会触发。但是当 searchText 的值被代码更改时,只有 ionChange 被触发。因此我们可以得出结论,ion-searchbar 组件中,ionInput 事件会在用户在文本框中输入时触发,而 ionChange 事件会在用户输入值时触发文本框已更改。

这是 live example

关于angular - ionInput 和 ionChange 之间的显着差异,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48555306/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com