我正在使用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)
})
});
}
}
}
但是出现以下错误:
TypeError: Cannot read property 'get' of undefined
所以我认为我没有访问vue实例的权限?我试图将vue实例绑定到window对象,如下所示:
Vue.use(VueResource);
Vue.use(BootstrapVue);
Vue.use(Vuelidate);
const vm = new Vue({
el: '#app',
router,
template: '<App/>',
components: {
App
}
});
window.vm = vm;
我也试图将此实例全局保存在文件本身中。但这是行不通的。如何在vue验证程序中执行http请求?
该库: Vuelidator