Changement de Blazor Interop LocalStorage 0.4.0 à 0.5.1

blazor c# javascript

Question

J'apprends à utiliser Blazor Interop, mais il a changé récemment. Je n'ai donc pas d'exemple facile à apprendre. J'ai copié un code d'un exemple de travail et j'aimerais le remplacer par un nouvel interop. Voici le code de Blazor 0.4.0 à partir du fichier .js

Blazor.registerFunction('saveToken', token => {
window.localStorage.setItem('jwt', token);
console.log("Authentication token has been stored.");
return true;

});

Et ceci à partir de la page Blazor. Fonctions .csthml

Blazor.registerFunction('saveToken', token => {
window.localStorage.setItem('jwt', token);
console.log("Authentication token has been stored.");
return true;

J'ai déjà lu le Blazor Doc Interop https://blazor.net/docs/javascript-interop.html et l'exemple était très facile à suivre, mais avec localstorage, je ne sais pas comment

Réponse acceptée

En 0.5+, vous rendez la fonction visible par la window .

window.saveToken = token => {
    window.localStorage.setItem('jwt', token);
    console.log("Authentication token has been stored.");
    return true;
};

JsRuntime.Current.InvokeAsync<bool>("saveToken", token);

Réponse populaire

Ou, vous pouvez simplement utiliser un paquet Nuget qui fait déjà l’interop pour vous comme celui-ci: https://github.com/BlazorExtensions/Storage




Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi
Sous licence: CC-BY-SA with attribution
Non affilié à Stack Overflow
Est-ce KB légal? Oui, apprenez pourquoi