【发布时间】:2016-12-22 13:43:23
【问题描述】:
我正在使用此解决方案在 vuejs 组件中动态设置表格单元格:
http://forum.vuejs.org/topic/526/repeating-table-row-with-slot
这仅适用于 Vue.js v1.0.10,但不适用于当前版本 v1.0.26。
Jsfiddle:https://jsfiddle.net/peL8fuz3/
我正在尝试获取以下标记(项目对象应该在组件中可用)
<div id="vue">
<basic-table>
<table-cell>{{ item.id }}</table-cell>
<table-cell>{{ item.title }}</table-cell>
</basic-table>
</div>
Vue.js 组件(更多内容)
Vue.component('basic-table', {
template: '<table><tbody><tr v-for="item in collection" v-slot></tr></tbody></table>',
data: function () {
return {
collection: [
{id: 1, title: 'Vue'},
{id: 2, title: 'Vue 2'},
{id: 3, title: 'Vue 3'},
{id: 4, title: 'Vue 4'},
]
}
}
});
有人知道怎么解决吗?
编辑 还没有找到可行的解决方案 - 仍在寻找..
【问题讨论】:
-
您不能使用插槽并将单元格数据作为道具传递给表格单元格组件。在当前版本的 vue 中,我认为 slot 指令只是 slot 而不是 v-slot 但两者都可能被接受
-
检查 jsfiddle - 定义了一个 slot - 指令:)
-
VueJS 中的模板实际上不是 HTML,它代表了一个封装在语法糖中的渲染函数,与真正的 HTML 非常相似。这就是为什么你必须在 tr 里面有 td,在 ul 里面有 li。
标签: javascript components vue.js vue-component