Vue.js 从自定义表槽中剥离了THEAD、TBODY、trhtml元素

Vue.js 从自定义表槽中剥离了THEAD、TBODY、trhtml元素,vue.js,vuejs2,Vue.js,Vuejs2,我正在努力学习VueJS。我还处于初级阶段,请原谅我的误解 我有一个.vue文件,它呈现一个自定义表元素 导出默认值{ 数据(){ 返回{ 风格:{ 分隔符:'分隔符', 实线:“bg”, 背景:“背景” } }; }, 道具:{ 类型:{default:'separator'}, 主题:{default:'primary'} }, 计算:{ 类别:函数(){ 返回`table m-table m-table--head-${this.styles[this.type]}-${this.the

我正在努力学习VueJS。我还处于初级阶段,请原谅我的误解

我有一个
.vue
文件,它呈现一个自定义表元素


导出默认值{
数据(){
返回{
风格:{
分隔符:'分隔符',
实线:“bg”,
背景:“背景”
}
};
},
道具:{
类型:{default:'separator'},
主题:{default:'primary'}
},
计算:{
类别:函数(){
返回`table m-table m-table--head-${this.styles[this.type]}-${this.theme}`;
}
}
}
在我尝试创建模板的HTML文件中,它如下所示:


第1栏
值1
但是当页面呈现时,
中的所有html都被剥离,只留下文本:

如果我调用
$vm0.$slots.defaults[0].elm
,我得到的只是
文本,没有HTML,没有
等等

我在网上搜索了
vuejs2从插槽中剥离html
,但找不到任何与此相关的信息

我知道我的
.vue
文件目前可能并不完美,我只是想了解一些基本知识


非常感谢您的帮助,为我指明了剥离HTML(或其他内容)的正确方向。

这是由于HTML中的限制:表子项(如
等)只能出现在
中,即使对于自定义元素也是如此

使用自定义表的官方解决方法是使用Vue支持的HTML属性:


第1栏
值1

请参见此处的推测,但您可能会遇到
元素作为无效内容被吊出,因为它们是包装它们的
。请看上的这一部分。好的,我会试试它的建议:)谢谢@DigitalDriver的答案已经发布,但您提供的链接也是一个有用的答案。如果你想把它贴出来作为答案,我会很高兴地投上一票:)不用担心,很高兴你把它整理好了。那么这就是我们现在所做的,而不是重复标记吗?@Derek:不一定。我理解你的困惑,如果我只是添加一个链接到一个类似的内容的答案。在这种情况下,我认为,虽然这个答案也与这个问题有关,但这些问题并不等同。我无法通过快速搜索找到合适的等效问题,即使这是众所周知的警告(如果您有任何疑问,我很乐意找到)。此外,据观察,在前端,许多人(希望不是这里的OP)拒绝回答与他们的情况不完全相符的重复问题。我记得Meta上有一篇关于它的帖子,但找不到。很公平,只是检查一下。谢谢你的解释。有些元东西有时会自相矛盾。