当前位置: 首页 > Web前端 > HTML

如何使用Vue命名插槽创建多个模板插槽?

时间:2023-04-03 00:37:20 HTML

作者:MattMaribojoc译者:前端小智来源:stackabuse有梦想,有干货,微信搜索【大千世界】关注这位大清早还在洗碗的洗碗智慧。本文已收录到GitHubhttps://github.com/qq449245884/xiaozhi,里面有完整的测试站点、资料和我的一线厂商访谈系列文章。Vue插槽允许将内容从父组件注入到子组件中。这是最基本的示例,如果我们不提供来自父级的任何槽内容,无论我们将放入什么都将是后备内容。//ChildComponent.vue你的组件代码://ParentComponent.vue经过编译,我们的DOM会是这样的

替换了slot的默认内容
我们也可以在父组范围内写入任意数据插槽区域。例如,父组件有一个名为title的数据字段,我们可以使用以下代码将其注入到子组件中://ParentComponent.vue为什么我们需要命名槽Vue中使用了两种命名槽步骤:使用name属性命名子组件中的插槽使用v-slot指令从父组件向这些命名插槽提供内容默认情况下,当插槽未指定显式名称属性时,它具有默认名称默认值。为了给我们的槽命名,元素有一个特殊的name属性,可以让我们区分多个槽。在下面的Article.vue中,我们命名了三个槽//Article.vue-ChildComponent然后,在父组件中,我们可以在我的评论
再次运行:用Vue命名slots有什么意义命名slots让我们可以使用多个slots,但是为什么这对我们Vue开发者有用呢。简而言之,它使我们能够更好地组织我们的开发代码,并编写更具可扩展性的代码。我个人认为最重要的是它允许我们在代码上使用插槽,这使得样式化更容易。在我们的示例中,Article.vue子组件只有三个插槽,但实际上,插槽看起来更像这样,以便我们的组件可以为每个部分添加CSS样式。在这个例子中,更容易理解为什么我们需要多个插槽。由于我们注入的内容被不同的

和DOM元素相互分隔。没有办法在一个插槽中传递所有这些信息。如果您检查DOM,您可以看到使用v-slot的模板将内容正确地插入到正确的位置。~完了,我是知婉知,我去洗碗了,下期见!代码部署后可能存在的bug,无法实时获知。事后为了解决这些bug,花费了大量的时间在日志调试上。顺便推荐一个好用的bug监控工具Fundebug。原文:https://learn.co/2021/04/usin...交流有梦想,有干货,微信搜索【大千世界】关注这位凌晨还在洗碗的洗碗智慧。本文GitHubhttps://github.com/qq44924588...已收录,有完整的测试站点、资料和我的一线厂商访谈系列文章。