2017-01-01 64 views
1

我有有输入和内部各一对夫妇谱曲的还有另外一个比较错误形式,所以我有

// input comp 
<template></template> 

<script> 
    import Store from '../../store' 

    export default { 
     props:['errors'], 
     data() { 
      return { 
       input: '' 
      } 
     }, 
     computed: { 
      showError() { 
       if (this.errors && !this.input) { 
        return true; 
       } 
      } 
     } 
    } 
</script> 

// error comp 
<template> 
    <span class="help-block"> 
     <strong v-for="error in errors"> 
      {{ error }} 
     </strong> 
    </span> 
</template> 

<script> 
    export default { 
     props: ['errors'], 
     watch: { 
      errors: (val) => { 
       this.$emit('newError') 
      } 
     }, 
    } 
</script> 

// display the error 
<form-errors :errors="errors" v-if="showError" v-on:newError="showError = !showError"></form-errors> 

等什么是后是

  1. 得到error watch实际上作为工作至今我不知道如何挂钩到组件更新

  2. 如何重写的计算的道具

+0

你能为此创建一个小提琴吗? – Saurabh

+0

上午使用模板的刀片和3与儿童和父母之间的数据存储comps,所以使一个小提琴不会很容易,但你可以问我什么是不明确的你。 – ctf0

回答

0

不,你不能覆盖计算性能是这样的:showError = !showError,你必须使用一些其他的办法。

既然你想显示两个错误:形成输入的误差和从后端未来相关的错误:你可以有以下的错误变量的结构:

errors: { 
    "backendErrors": [], 
    "formErrors" : [] 
} 

现在你可以有你的计算性能显示错误如下所示:

showError() { 
    if (this.errors.backendErrors || (this.errors.formErrors && !this.input)) { 
     return true; 
    } 
    else{ 
     return false 
    } 
} 

其他适合您的逻辑。