Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Store.js中使用插件(VeeValidate)_Javascript_Vue.js_Vuex - Fatal编程技术网

Javascript 在Store.js中使用插件(VeeValidate)

Javascript 在Store.js中使用插件(VeeValidate),javascript,vue.js,vuex,Javascript,Vue.js,Vuex,我正在使用Vuex并添加了vee validate()。我正在使用一个store对象,通过它的一个操作,我希望能够根据服务器响应向errors集合添加自定义错误。是否可以访问vee validate的全局错误(ErrorBag)集合,该集合通常用作属性 根据,我应该能够添加到errors对象,但是当我在store对象中时,这个显然不一样 例如: <span id="error-message" v-if="errors.has('phone')">error message</

我正在使用Vuex并添加了vee validate()。我正在使用一个store对象,通过它的一个操作,我希望能够根据服务器响应向errors集合添加自定义错误。是否可以访问vee validate的全局
错误
(ErrorBag)集合,该集合通常用作属性

根据,我应该能够添加到errors对象,但是当我在store对象中时,
这个
显然不一样

例如:

<span id="error-message" v-if="errors.has('phone')">error message</span>
错误消息

我希望有一种方法可以访问
errors
集合。是否有一种方法需要导入
VeeValidate
以访问我需要的内容?它是否以某种方式全局可用?

我建议将操作中引发的错误添加到存储中,并从计算属性访问组件中的错误

这遵循单向数据流原则,并且由于计算的是被动的,因此应该为视图提供异步更新的机会

也许:

<span id="error-message" v-if="allErrors.has('phone')">error message</span>

computed: {
  allErrors() {
    return this.$validator.errors
      .concat( this.$store.state.asyncErrors )
}
错误消息
计算:{
allErrors(){
返回此。$validator.errors
.concat(此.store.state.asyncErrors)
}

详细信息需要充实。

将组件中的errors对象作为参数传递给操作。我非常喜欢这个想法。但是当我在操作之前记录这个。$validator.errors.items时,它会显示一个空数组(这是另一个问题)但是,当我从操作本身内部记录它时,它是空的。我只能向操作传递一个额外的参数吗?我相信操作和突变都接受一个
有效载荷
参数,您可以使一个对象传递多个参数。您还可以对它们进行分解。因此,它类似于
myAction({commit,state},{errors,other}{…}
,您可以通过
dispatch(“myAction”,{errors:this.errors,other})调用它
。确切的语法可能会有所不同,但这是一般的想法。这对传递它起到了作用,但我的问题是,从操作中更新它实际上并不意味着会显示错误,除非我做错了什么。如果我将错误添加到错误包中,我希望它显示在我出错的页面(“电话”)上。first()但它似乎不是那样工作的。我是这样添加的:
错误。添加('phone','This a cool error','This is for');