Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vue.js/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vue.js 基于prop项格式化Quasar表中的行_Vue.js_Vuejs2_Quasar Framework - Fatal编程技术网

Vue.js 基于prop项格式化Quasar表中的行

Vue.js 基于prop项格式化Quasar表中的行,vue.js,vuejs2,quasar-framework,Vue.js,Vuejs2,Quasar Framework,使用q-table,我试图根据它包含的名称格式化特定行,但是当我将computed类添加为类绑定时,不知何故,该表没有显示出来。 有没有一种方法可以让它工作,这样就可以使用类绑定的多个条件 这里 使用此计算类绑定时,您可以看到表未加载。您在计算属性内调用的代码this.props.row.name使用错误 computed属性的上下文是当前组件的实例,而不是q-trcontext,因此this.props.row不存在 正确的用法是将v-slot:body=“props”的props.name传

使用q-table,我试图根据它包含的
名称
格式化特定行,但是当我将computed
添加为类绑定时,不知何故,该表没有显示出来。 有没有一种方法可以让它工作,这样就可以使用类绑定的多个条件

这里
使用此计算类绑定时,您可以看到表未加载。

您在计算属性内调用的代码
this.props.row.name
使用错误

computed属性的上下文是当前组件的实例,而不是
q-tr
context,因此
this.props.row
不存在

正确的用法是将
v-slot:body=“props”
props.name
传递到一个方法中,在该方法中根据不同的条件返回您期望的类名

例如():

模板:

  <template v-slot:body="props">
    <q-tr :props="props"  :class="tableFormat(props.row.name)">
      <q-td v-for="col in props.cols" :key="col.name" :props="props">{{ col.value }}</q-td>
    </q-tr>
  </template>
{
  methods: {
    tableFormat: function (name) {
      return name ? 'text-bold' : ''
    }
  }
}

您在computed属性中调用的代码
this.props.row.name
使用错误

computed属性的上下文是当前组件的实例,而不是
q-tr
context,因此
this.props.row
不存在

正确的用法是将
v-slot:body=“props”
props.name
传递到一个方法中,在该方法中根据不同的条件返回您期望的类名

例如():

模板:

  <template v-slot:body="props">
    <q-tr :props="props"  :class="tableFormat(props.row.name)">
      <q-td v-for="col in props.cols" :key="col.name" :props="props">{{ col.value }}</q-td>
    </q-tr>
  </template>
{
  methods: {
    tableFormat: function (name) {
      return name ? 'text-bold' : ''
    }
  }
}