以下组件的设计哪个比较好?

如果一个页面要引入一个组件,假设这个组件有两个按钮,其中一个按钮在用户没有登录时会隐藏,可以通过 hasLogin 进行控制,其中 hasLogin 保存在全局的 store 中。一种设计方案是在组件内引入 hasLogin。一种是在页面内引入 hasLogin,然后通过 props 传入到组件。这两种方式哪一种更好

阅读 1.5k
2 个回答

两个设计都不好,正确的方式是这两个按钮不内置在组件中,通过slot传入。这个时候就可以自由控制按钮的显隐了

组件当然是要具备灵活的可配置性,“保存在全局的 store 中”这种强依赖使用者无法进行配置丧失了灵活性。而props 传入把配置能力转交给了使用者,更灵活。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题