Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
3.5k views
in Technique[技术] by (71.8m points)

如何在 umijs 中手动触发运行时配置 patchRoutes?

想在项目中通过运行时配置 patchRoutes({ routes }) 来动态生成路由,但感觉 patchRoutes({ routes }) 方法是在程序一开始运行时就执行了,并且只会执行一次。
那么对于如下这种应用场景,该如何解决呢?
1.用户首先进入的是登录页面;
2.用户在输入账号、密码登录后,服务器根据用户拥有的权限,为用户返回其能够访问的路由。

想实现上述功能,感觉根据目前 umijs 文档给出的 render 和 patchRoutes 进行配合的方法并不能实现,因为这两个方法都是在程序开始运行时就执行完了,无法等到采集了用户输入的账号、密码后手动触发。因此想请教一下各位大佬,如何能够由开发者手动触发 patchRoutes 方法去动态更新路由呢?

我尝试使用 plugin 的 applyPlugins 方法去强行调用 patchRoutes ,虽然调用了写在 src/app.ts 下的 patchRoutes 方法,但无法实现动态修改路由的目的。


与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)
等待大神解答

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...