reactjs - TypeError: performanceMeasurement.startMeasurement er ikke en funksjon
Feil oppstod rett og slett når jeg prøvde å trykke på logg inn fra @azure/msal-react i Next 13. Da jeg sjekket feilloggen, kommer den fra kjernelib @azure/msal-react. Jeg prøvde også med påloggings-popup, men feilen er fortsatt den samme.
Jeg har kode, i min auth.ts
export const msalConfig = {
auth: {
clientId : "afxxxxx-xxxxxx-xxxxxx",
authority : "https://login.microsoftonline.com/common/",
redirectUri : "/",
}
};
export const loginRequest = {
scope: ["User.Read"]
};
_app.tsimport { MsalProvider } from '@azure/msal-react'
import { PublicClientApplication, EventType, SilentRequest, AccountInfo } from '@azure/msal-browser'
import { msalConfig } from '@/services/auth'
import type { AppProps } from 'next/app'
import { useRouter } from 'next/router'
import { CustomNavigationClient } from '@/utils/NavigationClient'
export const msalInstance = new PublicClientApplication(msalConfig);
const accounts = msalInstance.getAllAccounts();
if (accounts.length > 0) {
msalInstance.setActiveAccount(accounts[0]);
};
msalInstance.addEventCallback((event) => {
if (event.eventType === EventType.LOGIN_SUCCESS && (event.payload as SilentRequest).account) {
const account = (event.payload as SilentRequest).account;
msalInstance.setActiveAccount(account as AccountInfo);
}
});
export default function App({ Component, pageProps }: AppProps) {
const router = useRouter();
const navigationClient = new CustomNavigationClient(router);;
msalInstance.setNavigationClient(navigationClient);
return (
<MsalProvider instance={msalInstance}>
<Component {...pageProps} />
</MsalProvider>
)
}
og på sidene mine viser jeg bare påloggings Index.ts
const initializeSignIn = () => {
instance.loginRedirect();
};
return (
<>
<UnauthenticatedTemplate>
<center>Please sign-in to see your profile information.</center>
<button onClick={initializeSignIn}>Sign In</button>
</UnauthenticatedTemplate>
</>
)
Gikk jeg glipp av noe i konfigurasjonen, eller er det bare en feil i kjernebiblioteket?
Svar #1
OPPDATERING: Som diskutert her i git issue-diskusjonen var problemet med @azure/[email og det ble fikset i @azure/[email .
Du kan begynne å bruke
"@azure/msal-browser": "^2.32.2",
"@azure/msal-react": "^1.5.2"
På tidspunktet for dette problemet er de siste publiserte versjonene
"@azure/msal-browser": "2.32.2",
"@azure/msal-react": "1.5.2"
Jeg har brukt microsoft-authentication-library-for-js for å få @azure/msal-browser, @azure/msal-react til å kjøre prosjektet mitt ved å bruke kildekoden. Fungerte fint. Det ser ut til at problemet oppsto når koden ble publisert (bundling/minifisering/hvem vet osv.).
inntil den nye utgivelsen kommer ut, for å løse problemet, endre npm-pakkene til
"@azure/msal-browser": "2.32.1",
"@azure/msal-react": "1.5.1"
Svar #2
Jeg støtte på dette problemet også i dag. Dette har sannsynligvis noe å gjøre med at Microsoft ga ut en ny versjon. Jeg nedgraderte bare, og det fungerte igjen.
