Javascript 如何将变量传递给自定义组件而不进行求值?

Javascript 如何将变量传递给自定义组件而不进行求值?,javascript,html,vue.js,vuejs2,vue-component,Javascript,Html,Vue.js,Vuejs2,Vue Component,我有一个自定义组件: <template> <div class="form-group"> <label for="desc">{{label}}</label> <input id="desc" type="text" class="form-control input-sm" :name="label" :readonly="readonly" v-b

我有一个自定义组件:

<template>
  <div class="form-group">
    <label for="desc">{{label}}</label>
    <input id="desc" type="text" class="form-control input-sm"
           :name="label"
           :readonly="readonly"
           v-bind:value="value"
           v-on:input="$emit('input', $event.target.value)"
           v-validate="validate"
    />
    <div class="error-feedback">{{ errors.first(label) }}</div>
    {{readonly}}<!-- debugging -->
  </div>
</template>

<script>
export default {
  name: 'FormGroup',
  props: {
    label: String,
    value: String,
    readonly: String,
    validate: String
  },
  data: function() {
    return {
    }
  }
}
</script>

<style scoped>
  .error-feedback {
    color: #cc3333;
  }
</style>

{{label}}
{{errors.first(label)}
{{readonly}}
导出默认值{
名称:“FormGroup”,
道具:{
标签:字符串,
值:字符串,
只读:字符串,
验证:字符串
},
数据:函数(){
返回{
}
}
}
.错误反馈{
颜色:#cc3333;
}
当我称之为:

  <FormGroup label="Channel" readonly="device_config.enabled" validate="required" v-model="device_config.some_setting" />

自定义组件将“readonly”属性作为文本字符串
接收“device\u config.some\u setting”
,而不是
device\u config.some\u setting
中包含的值

如何使自定义组件使字段只读取决于传入的调用组件模型中的值?

使用
v-bind:readonly=“setting”
设置应是父组件中定义的属性:

    <FormGroup label="Channel" :readonly="setting" validate="required" v-model="device_config.some_setting" />

添加
v-bind:
只读前将其绑定