vue.js 一段时间后自动清除v-textarea内容

pbpqsu0x  于 2022-11-17  发布在  Vue.js
关注(0)|答案(2)|浏览(231)

我有一个v-textarea,我写的东西,如果我不做任何动作,在v-textarea上下文必须在一定时间后自动清除(2分钟).我该怎么做?

<v-textarea
          v-model.trim="text"
          clearable
          :label="modeLabel"
      >
bf1o4zei

bf1o4zei1#

我会用计时器做这样的事情。

<v-textarea
  v-model.trim="text"
  clearable
  :label="modeLabel"
  @change="clearHandler(event)"
>

var timerID = null;

function clearHandler() {

    if (timerID) {
        clearTimeout(timerID);
    }

    // create a timer to clear the textarea by setting the model to empty string
    timerID = setTimeout(() => {
        this.text = "";
    }, 120000);

}

此外,我将使用this.timerIDref变量,而不是像我的示例那样使用var,这取决于您使用的是什么版本的vue。

ykejflvf

ykejflvf2#

我用一个简单的观察器创建了这个。首先,我们创建了一个包含timeout的函数。然后我们创建了一个触发为val的观察器。在这个观察器中,我们调用timeout,然后清除timeout。这样做的原因是我们希望它重新运行函数。观察器也会观察值,如果用户输入了某个值,timeout就会被取消。
第一个

相关问题