vue.js - 动态路线,但不是传统意义上的路线
问题描述
我想知道是否有一种方法可以根据数据库中的数据动态生成路由?
目前,我在路由文件中定义我的路由,然后将其导入我的 vue 项目。有没有一种方法可以将特定配置存储在数据库中,例如路径、名称、元数据,然后当应用程序加载时,根据用户的身份验证级别,为该用户创建路由?
我要求创建而不是使用带有参数的预先编写的路由的原因是因为我想让我的用户(在将来的某个时候)能够从我的系统创建他们自己的页面。
所以只是想从社区知道是否有一种方法可以基于 axios 调用或其他东西来做到这一点?
解决方案
我认为从技术上讲,您最好使用title
具有公共前缀的参数并仅查找该标题。从理论上讲,拥有一个任何人都可以创建任何页面的完全动态的应用程序听起来不错……直到有人决定使用“登录”作为页面名称并覆盖您自己的登录组件,从而使该应用程序无法使用。
也就是说,您可以使用router.addRoutes
动态添加路由到您的路由器。使用静态路由(例如您的主页、登录页面、404 页面)创建一个路由器,然后基于 api 调用扩展您的路由器。
推荐阅读
- c# - 在客户端计算机上运行应用程序时出现 C# 数据库错误
- javascript - 从带有 blob 源的视频中绘制时,Canvas 返回空白 URI - Javascript
- python - 多数据单元测试
- javascript - 使用 beforeCreated 时模板不与数据一起呈现
- c# - 在 .net core 的服务容器中捆绑项目的最佳实践
- udp - HEVC 视频的 P 帧可以在流媒体上丢弃吗?
- kentico - 媒体选择 - GUID 字段
- python - Pandas 将列转换为具有值的行
- docker - ansible docker-compose 模块问题
- php - SQL 当用户选择一个数据时,其他数据也将被选中