TS下,form表單驗證validate報錯

validate報錯 bash

Property 'validate' does not exist on type 'Vue | Element | Vue[] | Element[]'.
  Property 'validate' does not exist on type 'Vue'.
any
複製代碼

緣由:ui

validate找不到類型,此時能夠使用類型斷言,將 validate 斷言成: HTMLFormElementthis

類型斷言的用法如上,在須要斷言的變量前加上 便可。 類型斷言不是類型轉換spa

解決方法:code

1)、類型斷言 (this.$refs[formName] as HTMLFormElement).validate();
    2)、定義一個變量等價FormData:
        export default class AccountEdit extends Vue {
            FormData: any
            submitForm(formName: string) {
                this.FormData = this.$refs[formName]
                this.FormData.validate((valid: any) => {})
            }
        }複製代碼
相關文章
相關標籤/搜索