我在Vue项目里用了typescript,引用了ant-desigb-vue的from组件
<script lang="ts">
import { Component, Vue } from 'vue-property-decorator';
function hasErrors (fieldsError :any) {
return Object.keys(fieldsError).some(field => fieldsError[field]);
}
@Component({
components: {},
data () {
return {
hasErrors,
form: this.$form.createForm(this),
};
},
mounted () {
this.$nextTick(() => {
// To disabled submit button at the beginning.
this.form.validateFields();
});
},
methods: {
// Only show error after a field is touched.
userNameError () {
const { getFieldError, isFieldTouched } = this.form;
return isFieldTouched('userName') && getFieldError('userName');
},
// Only show error after a field is touched.
passwordError () {
const { getFieldError, isFieldTouched } = this.form;
return isFieldTouched('password') && getFieldError('password');
},
handleSubmit (e) {
e.preventDefault();
this.form.validateFields((err: any, values: any) => {
if (!err) {
console.log('Received values of form: ', values);
}
});
},
},
created(){
console.log(this.form);
}
})
export default class Home extends Vue {}
</script>
组件是正常运行的,就是typescript会报错:
Property 'form' does not exist on type 'Vue'. Did you
mean '$form'?
怎么解?我在created打印this.form也可以打印出来啊,怎么解决这个typescript错误?
typescript新手 求教