亲爱的 React 开发者们。
当您想要使用新的加载程序功能时,有人可以解释或展示在当前最新版本 6.4.1 中将 MSAL 与 React Router 结合使用时的最佳方法是什么吗?
基于新的加载程序功能,您可以在此处阅读:
“每个路由都可以定义一个“加载器”函数,以便在渲染之前向路由元素提供数据。”
https://reactrouter.com/en/main/route/loader
我之所以提出这个问题,是因为我缺乏想象力……我记得访问 msal 实例的唯一方法是使用 MSAL 库在 MsalProvider 内的组件上提供的挂钩。但是,新的加载程序功能依赖于一个普通函数,我无法使用挂钩或访问任何应用程序状态。
任何帮助将非常受欢迎。提前致谢。
为了在下面提供一些背景信息,我分享了一些我的应用程序代码。
在我的 UserEditScreen.tsx 中:
// UserEditScreen component definition
....
// loader definition outside UserEditScreen component
export const loader = ({ request, params }: LoaderFunctionArgs) => {
...
// some more code to clarify my need on the msal instance inside the loader
const request = {
account: msalInstance.getActiveAccount(),
scopes: scopes
}
const accessToken = await msalInstance.acquireTokenSilent(request)
.then(response => …Run Code Online (Sandbox Code Playgroud)