2017-08-31 15 views
0

私はVeeValidateを使用しており、完全に英語(デフォルト)で動作します 他の言語を使用しようとするとエラーが発生します "プロパティ 'ロケール'が 'バリデータ'タイプに存在しません。ここでVeeValidateローカライズ "プロパティ 'ロケール'が 'バリデータ'タイプに存在しません。"

が私のコードです:

import VeeValidate from 'vee-validate'; 
import french from 'vee-validate/dist/locale/fr'; 

Vue.use(VeeValidate); 

@Component 
export default class TestTest extends Vue { 
locale: any; // I have tried locale: string='fr'; 

nextLocale() { 
    return this.locale === 'en' ? 'French' : 'English'; 
} 

changeLocale() { 
    this.locale = this.$validator.locale === 'fr' ? 'en' : 'fr'; 
    this.$validator.setLocale(this.locale); 
}  

created() { 
    this.$validator.updateDictionary({ 
    fr: { 
    messages: french.messages, 
    } 
}) 
} 

// other none related code... 

} 
+1

[最新のバージョン]で定義されているように見えます(https://github.com/baianat/vee-validate/blob/b916e2a28b7c4126fe26312babbc22e412a8c384/types/vee-validate.d.ts#L67.json )。別のバージョンを使用していますか? – Bert

+0

ちょうど同じバージョンの最新バージョンに更新されました... @Bert – misshomme

答えて

1

はによると:動的コンポーネントにロケールを変更するには
http://vee-validate.logaretm.com/localization.html#api

、あなたはとても

this.$validator.localize('fr', french) 

などローカライズ呼び出す必要があります上記の呼び出しが既にこれをしているので、updateDictionaryを呼び出す必要はありません。

関連する問題