Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/468.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 Vuelidate获取vue实例_Javascript_Vue.js_Vuelidate - Fatal编程技术网

Javascript Vuelidate获取vue实例

Javascript Vuelidate获取vue实例,javascript,vue.js,vuelidate,Javascript,Vue.js,Vuelidate,我正在使用vuelidate,它工作得非常好。但我想在自定义验证器中执行一个请求。参见代码: validations: { partnumberValue: { required, isValid(value) { if (value.length < 12 || value.length > 12) return false; return new Promise((resolve, reject) => { vm

我正在使用vuelidate,它工作得非常好。但我想在自定义验证器中执行一个请求。参见代码:

validations: {
  partnumberValue: {
    required,
    isValid(value) {
      if (value.length < 12 || value.length > 12) return false;

      return new Promise((resolve, reject) => {
        vm.http.get('/api/test/' + value).then((response) => {
          resolve(response.json())
        }, (response) => {
          reject(response.status)
        })
      });
    }
  }
}
所以我认为我没有访问vue实例的权限?我尝试将vue实例绑定到窗口对象,如下所示:

Vue.use(VueResource);
Vue.use(BootstrapVue);
Vue.use(Vuelidate);

const vm = new Vue({
  el: '#app',
  router,
  template: '<App/>',
  components: {
    App
  }
});

window.vm = vm;
Vue.use(VueResource);
Vue.use(BootstrapVue);
Vue.使用(Vuelidate);
const vm=新的Vue({
el:“#应用程序”,
路由器,

模板:“

您正在使用vue资源吗?@C2486是的。这是正确的。我认为您想要
vm.$http
而不是
vm.http
Vue.use(VueResource);
Vue.use(BootstrapVue);
Vue.use(Vuelidate);

const vm = new Vue({
  el: '#app',
  router,
  template: '<App/>',
  components: {
    App
  }
});

window.vm = vm;