BootstrapVue - 属性 或方法 "data" 未定义...使用作用域插槽时
BootstrapVue - Property or method "data" is not defined... when using scoped slots
你好,我正在学习使用 BootstrapVue,我从 BootstrapVue 的官方文档中复制了示例 -
<template>
<div>
<b-table :fields="fields" :items="items" foot-clone>
<!-- A custom formatted data column cell -->
<template v-slot:cell(name)="data">
{{ data.value.first }} {{ data.value.last }}
</template>
<!-- A custom formatted header cell for field 'name' -->
<template v-slot:head(name)="data">
<span class="text-info">{{ data.label.toUpperCase() }}</span>
</template>
<!-- A custom formatted footer cell for field 'name' -->
<template v-slot:foot(name)="data">
<span class="text-danger">{{ data.label }}</span>
</template>
<!-- Default fall-back custom formatted footer cell -->
<template v-slot:foot()="data">
<i>{{ data.label }}</i>
</template>
</b-table>
</div>
</template>
<script>
export default {
data() {
return {
fields: [
// A column that needs custom formatting
{ key: 'name', label: 'Full Name' },
// A regular column
'age',
// A regular column
'sex'
],
items: [
{ name: { first: 'John', last: 'Doe' }, sex: 'Male', age: 42 },
{ name: { first: 'Jane', last: 'Doe' }, sex: 'Female', age: 36 },
{ name: { first: 'Rubin', last: 'Kincade' }, sex: 'Male', age: 73 },
{ name: { first: 'Shirley', last: 'Partridge' }, sex: 'Female', age: 62 }
]
}
}
}
</script>
在教程页面上,一切似乎都正常,但是当我 运行 这个时,我不断得到这个: Property or method "data" is not defined...
我相信这是因为 <template v-slot:cell(name)="data">
部分以某种方式没有实例化数据,但我不知道为什么以及如何修复它,请帮忙。
是的,版本问题。我使用的是 Vue 2。5.x 在我将它更新到 2.6.10 后,它可以正常工作,就像在教程中一样。
你好,我正在学习使用 BootstrapVue,我从 BootstrapVue 的官方文档中复制了示例 -
<template>
<div>
<b-table :fields="fields" :items="items" foot-clone>
<!-- A custom formatted data column cell -->
<template v-slot:cell(name)="data">
{{ data.value.first }} {{ data.value.last }}
</template>
<!-- A custom formatted header cell for field 'name' -->
<template v-slot:head(name)="data">
<span class="text-info">{{ data.label.toUpperCase() }}</span>
</template>
<!-- A custom formatted footer cell for field 'name' -->
<template v-slot:foot(name)="data">
<span class="text-danger">{{ data.label }}</span>
</template>
<!-- Default fall-back custom formatted footer cell -->
<template v-slot:foot()="data">
<i>{{ data.label }}</i>
</template>
</b-table>
</div>
</template>
<script>
export default {
data() {
return {
fields: [
// A column that needs custom formatting
{ key: 'name', label: 'Full Name' },
// A regular column
'age',
// A regular column
'sex'
],
items: [
{ name: { first: 'John', last: 'Doe' }, sex: 'Male', age: 42 },
{ name: { first: 'Jane', last: 'Doe' }, sex: 'Female', age: 36 },
{ name: { first: 'Rubin', last: 'Kincade' }, sex: 'Male', age: 73 },
{ name: { first: 'Shirley', last: 'Partridge' }, sex: 'Female', age: 62 }
]
}
}
}
</script>
在教程页面上,一切似乎都正常,但是当我 运行 这个时,我不断得到这个: Property or method "data" is not defined...
我相信这是因为 <template v-slot:cell(name)="data">
部分以某种方式没有实例化数据,但我不知道为什么以及如何修复它,请帮忙。
是的,版本问题。我使用的是 Vue 2。5.x 在我将它更新到 2.6.10 后,它可以正常工作,就像在教程中一样。