分配后更改输入值

Changing input value once assigned

我很困惑,我正在为输入元素分配一个值,来自路由参数

<input type="search" class="form-control search-control" :value="search">

和搜索计算函数

computed: {
  search() {
    if(this.serviceBenefitRoute) {
      return this.serviceBenefitRoute;
    }
    return this.$store.state.search;
  }
}

我面临的问题是,当 this.serviceBenefitRoute 有一个值时,它会显示在输入框中但无法删除,它一直存在,我尝试删除但它又回来了。我被这个问题困扰了很长时间并且 运行 没有想法。

听起来您想先从您的路线设置 search 初始 值,然后返回您的商店。

你应该可以使用这个

data () {
  return {
    search: this.$route.params.service || this.$store.state.search
  }
}

然后使用v-model

<input type="search"
       class="form-control search-control" 
       v-model="search">

您不需要 search 的计算值。