如何返回带有参数的属性值?

时间:2018-08-06 06:25:05

标签: javascript vue.js quasar-framework

我刚刚开始使用VueJS。我使用Quasar框架,its input component that provides an error state

<q-field :error="error" error-label="Oh buggers! You made a boo boo.">
   <q-input v-model="text" float-label="Colored with Error" color="amber"  />
</q-field>

我使用Vualidate来检查表单中的多个输入,并且我想返回error-label值的错误文本的上下文和本地化版本。

使用Blaze,我会使用带有参数的助手,例如error-label="{{getError 'email'}}",看起来像这样(未经测试的代码):

  getError(input) {
    let firstError = ""
    _.each(this.$v[input], function(validator) {
      if (!validator) { // eg. validator = 'required'
        firstError = i18n.__('input_error' + validator, {
          input
        }) // eg. firstError = 'The email field is required'
        break
      }
    })
    return firstError
  },

我不确定在VueJS中执行正确的方法。我注意到v-bind指令可以接受参数,但是我不知道怎么做(文档中没有示例地提到它)还是不正确的方法。

1 个答案:

答案 0 :(得分:1)

根据Quasar框架文档error-label是正确的,您可以像这样编写绑定:

:error-label="getError('email')"