javascript - 在组件内使用注入的插件会导致问题
问题描述
这就是我注入插件的方式。
export default ({ app }, inject) => {
inject('rule', {
required: value => !!value || 'Required',
email: value => /.+@.+\..+/.test(value) || 'Invalid E-mail format',
number: value => !isNaN(value) || 'Invalid number format',
minPrice: (value, maxPrice) => parseFloat(value) <= parseFloat(maxPrice) || 'Value must be less than or equal to max price',
maxPrice: (value, minPrice) => parseFloat(value) >= parseFloat(minPrice) || 'Value must be greater than or equal to min price',
});
};
文本字段组件:
<template>
<v-text-field v-model="form" hide-details="auto" outlined clearable v-bind="$attrs" />
</template>
<script>
export default {
props: ['value'],
computed: {
form: {
get() {
return this.value;
},
set(value) {
this.$emit('input', value);
},
},
},
};
</script>
我像这样使用它:<BaseTextField v-model="form.propertyNumber" label="Property Number" :rules="[$rule.required]" />
它会产生此错误:Cannot read property 'required' of undefined
将其直接安装在 vuetify v-text-field 似乎可以解决问题,但我想在我的自定义组件上使用它来简化我的代码
解决方案
推荐阅读
- pandas - 根据日期生成累积和行的函数(Pandas)
- powershell - Powershell 循环依赖
- c - 如何使用 C 播放任何类型的音频/声音文件?
- android - 如何在firebase android中获取子键的值?
- python - Python not passing correct size of string to C
- macos - LazyVGrid 中的 NavigationLink 在 swiftUI macOS 中无法正确显示
- f# - 如何使用 F# 的 rx 扩展从简单值创建 Observable?
- windows - iFuse 在 Windows 上访问 iPhone 文件
- mysql - mysql group by 返回所有行
- yocto - meta-qt5 yocto 层无法在 qt 版本 5.15.2 上编译