小编Ale*_*iga的帖子

React + MSAL + React Router 6.4.1(最新版本)加载器功能问题

亲爱的 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)

typescript reactjs react-router azure-ad-msal

5
推荐指数
1
解决办法
3315
查看次数

标签 统计

azure-ad-msal ×1

react-router ×1

reactjs ×1

typescript ×1