我试图在bootstrap-vue表中创建一个插槽,用自定义组件呈现任何布尔值。
所以我有一张简单的桌子
<b-table :items="items" :fields="columns" >
</b-table>
现在,如果我想以特定的方式呈现单个列,我必须使用插槽
<template v-slot:cell(active)="data" >
<my-component :item="data.item" />
</template>
它是有效的,因为我知道active
是一个布尔值。
我想概括这种行为,但我不能在模板中使用v-for
,也不能在模板上使用v槽:cell(active)
...这个想法是创建一个包含我所有布尔字段的数组并迭代它...
像这样的
<template v-slot:cell(b)="data" v-for="b in booleanFields">
<my-component :item="data.item[b]" />
</template>
因为Vue支持动态槽名,所以您可以使用变量来设置槽名,使用v-bind:[属性名称]="value"
语法。
这样你可以做一些事情,比如:
<template v-slot:['cell(' + b + ')']="data" v-for="b in booleanFields">
但是由于动态参数表达式的限制,使用引号是不可能的。因此,您必须创建一个助手方法来进行连接。因此:
<template v-slot:[gomycell(b)]="data" v-for="b in booleanFields">
加
methods: {
gomycell(key) {
return `cell(${key})`; // simple string interpolation
}
自然,您可以将方法gomycell
命名为cell
,并将其使用为v-插槽:[cell(b)]="data"
(请注意[]
s),但我留下了名称gomycell
>所以在这个例子中,更清楚的是什么是方法的名称,什么不是。
下面是一个演示动态插槽名称用法的小演示,它不是b-table
,但我认为它足以说明它是可能的:
Vue.component('my-table', {
template: '#my-table',
})
new Vue({
el: '#app',
data: {
booleanFields: [true, false]
},
methods: {
gomycell(key) {
return `cell(${key})`;
}
}
})
<script src="https://unpkg.com/vue"></script>
<div id="app">
<my-table>
<template v-slot:[gomycell(b)]="data" v-for="b in booleanFields">
<h3>who? {{ data.is }}</h3>
</template>
</my-table>
</div>
<template id="my-table">
<div>
<div style="color:green"><slot name="cell(true)" v-bind="{is: 'true!'}"></slot></div>
<div style="color:red"><slot name="cell(false)" v-bind="{is: 'false!'}"></slot></div>
</div>
</template>
尝试从这个Axios调用中获取超文本标记语言,以在b选项卡中呈现。运气不好。除了那里,它在任何地方都有效。对Vue来说还是很新鲜的,有点困惑我在这里错过了什么。我觉得编译在这里可能很有用,但也可能是过度的。 HTML: Vue:
目前正在使用引导vue。我需要生成,但是使用从api获得的动态头值,我不确定如何执行此操作。 我已经尝试了在数据中设置字段的常规方法,但若我尝试设置计算字段,我的表中并没有得到任何值` ` 是从包含如下数组的api接收的数据。此外,此阵列还可以添加更多次(来自api的数据)` ` 预期的结果是,我从api中获得了带有时间的列标题,并添加了日期列。 我可以使用时刻生成一系列的日期,但不确定如何将此映
1. 前言 本小节我们将介绍如何使用插槽slot,包括默认插槽、具名插槽、作用域插槽。插槽可以使组件的模版变得多样性,让用户在使用组件时可以自定义传入模版内容。在复杂组件中,当我们在使用多个插槽的时候将会是一个难点。但是也不必担心,只要我们将每个插槽类型的使用方法学透,相信面对任何复杂插槽的使用的时候都可以游刃有余。 2. 慕课解释 Vue 实现了一套内容分发的 API,将 元素作为承载分发内容的
本文向大家介绍使用Vue生成动态表单,包括了使用Vue生成动态表单的使用技巧和注意事项,需要的朋友参考一下 开需求会了,产品说这次需求的表单比较多,目前有18个,后期的表单可能会有增加、修改。我作为这次的前端开发,看到这样的需求,心里知道要这样搞不得把自己累死,首先表单居多,还会有变更,以后维护起来也让人心力憔悴。 于是我提议做动态表单,做一个表单的配置系统,在系统里配置表单类型、表单得字段、以及
当我尝试使用下面的数据时,我得到的第一列是true/false,而不是复选框。 这是vue表: 以下是我的表格数据:
本文向大家介绍vue使用video插件vue-video-player的示例,包括了vue使用video插件vue-video-player的示例的使用技巧和注意事项,需要的朋友参考一下 一、安装插件 二、配置插件 在main.js中全局配置插件 三、使用插件 在vue组件中的程序如下: 四、结果 结果如图所示: vue-video-player的npm社区地址:https://w