是否总是需要在vuejs中使用组件,即使它们可能不会被重用

bxgwgixi  于 2023-10-23  发布在  Vue.js
关注(0)|答案(1)|浏览(144)

我有一个问题已经在我脑海中盘旋了一段时间。每个创建的组件都应该是可重用的吗?让我们假设我们有一些html,css和JavaScript不能被重用。例如,特定产品的CRUD表(例如用户的CRUD)通过方法和监视器等进行更新。它可以被创建为一个名为UsersTable的组件,但该组件不能被重用,因为它具有通过DB进行用户管理的相关方法。例如,该组件应该在父组件中声明为纯html/css和js,还是应该声明为组件并发出事件以便与父组件通信?

70gysomp

70gysomp1#

为了重用组件,如果我们可以定义一个BaseTable组件,并提供一些选项,那会更好:
1.它将是一个Dynamic Component,允许我们指定或确定要渲染的组件。因此,如果我们有两个不同的表模板UserTable.vueProducTable.vue,我们可以通过在is指令中传递名称来决定哪个模板将被渲染:

  1. <component :is=”UserTable”></component>

1.它将使用一些命名插槽定义,然后我们可以确定UserTableProductTable中的不同插槽内容:

  1. <thead><slot name="thead"></slot></thead>

1.如果表模板是固定的,那么这将是最简单的情况,因为我们可以定义一个包含表的配置(头,列)的对象,然后将此对象作为props传递给BaseTable

相关问题