保护私有反应组件
Posted
技术标签:
【中文标题】保护私有反应组件【英文标题】:Protecting private react components 【发布时间】:2020-10-06 07:23:55 【问题描述】:我正在开发一个使用 laravel API 的单页应用程序,但我有一个问题。在 SPA 中,除非我执行私有路由,否则浏览器会继续下载受私有路由“保护”的组件。所以,我一直在搜索,我发现了代码拆分的概念,我想,我可以隐藏代码拆分私有的组件吗?如果没有,我可以用其他方式吗?因为,虽然我使用 JWT auth 保护 API 中的数据,但我不想暴露私有区域,例如管理面板等,即使它没有 API 数据。
【问题讨论】:
是的,您可以使用代码拆分来保护代码,因为捆绑只会在该路由触发时下载,您应该根据条件阻止。 我明白了。但是我仍然可以通过浏览器搜索一个未经过身份验证的拆分组件吗? 不,你不能,那是一些尚未下载的捆绑包的一部分。这就是代码拆分的全部想法。 即使我假装我已通过身份验证操作捆绑包,也无法加载受保护的组件? (抱歉问了这么多次,我想确定我确实明白了) 【参考方案1】:我想你是要求根据路由器拆分代码,它会根据需要下载吗?如果是,
在 react 中你可以使用 React.lazy 和 Suspense
https://reactjs.org/docs/code-splitting.html
【讨论】:
我想他已经经历过了,只是想知道他是否可以使用它来达到预期的结果。 感谢 Siraj 对问题的更多解释。以上是关于保护私有反应组件的主要内容,如果未能解决你的问题,请参考以下文章