* Fixup JS

* Avoid monkey patching
This commit is contained in:
Pranav K 2020-05-18 13:21:31 -07:00 committed by GitHub
parent 8efeefb3d1
commit 9949ab46c3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
6 changed files with 13 additions and 8 deletions

View File

@ -10,9 +10,9 @@ namespace Microsoft.AspNetCore.Components.Web
public static readonly string EnableNavigationInterception = Prefix + "enableNavigationInterception";
public static readonly string GetLocationHref = Prefix + "getLocationHref";
public static readonly string GetLocationHref = Prefix + "getUnmarshalledLocationHref";
public static readonly string GetBaseUri = Prefix + "getBaseURI";
public static readonly string GetBaseUri = Prefix + "getUnmarshalledBaseURI";
public static readonly string NavigateTo = Prefix + "navigateTo";
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -31,6 +31,11 @@ async function boot(options?: Partial<WebAssemblyStartOptions>): Promise<void> {
};
// Configure navigation via JS Interop
const getBaseUri = window['Blazor']._internal.navigationManager.getBaseURI;
const getLocationHref = window['Blazor']._internal.navigationManager.getLocationHref;
window['Blazor']._internal.navigationManager.getUnmarshalledBaseURI = () => BINDING.js_string_to_mono_string(getBaseUri());
window['Blazor']._internal.navigationManager.getUnmarshalledLocationHref = () => BINDING.js_string_to_mono_string(getLocationHref());
window['Blazor']._internal.navigationManager.listenForNavigationEvents(async (uri: string, intercepted: boolean): Promise<void> => {
await DotNet.invokeMethodAsync(
'Microsoft.AspNetCore.Components.WebAssembly',

View File

@ -13,8 +13,8 @@ export const internalFunctions = {
listenForNavigationEvents,
enableNavigationInterception,
navigateTo,
getBaseURI: () => BINDING.js_string_to_mono_string(document.baseURI),
getLocationHref: () => BINDING.js_string_to_mono_string(location.href),
getBaseURI: () => document.baseURI,
getLocationHref: () => location.href,
};
function listenForNavigationEvents(callback: (uri: string, intercepted: boolean) => Promise<void>) {

View File

@ -2,7 +2,7 @@ import '../src/GlobalExports';
import { UserSpecifiedDisplay } from '../src/Platform/Circuits/UserSpecifiedDisplay';
import { DefaultReconnectionHandler } from '../src/Platform/Circuits/DefaultReconnectionHandler';
import { NullLogger} from '../src/Platform/Logging/Loggers';
import { resolveOptions, ReconnectionOptions } from "../src/Platform/Circuits/BlazorOptions";
import { resolveOptions, ReconnectionOptions } from "../src/Platform/Circuits/CircuitStartOptions";
import { ReconnectDisplay } from '../src/Platform/Circuits/ReconnectDisplay';
const defaultReconnectionOptions = resolveOptions().reconnectionOptions;