jsakamoto / Toolbelt.Blazor.HeadElement

Head element support (change the document title, "meta" elements such as OGP, and "link" elements) for Blazor apps.
https://demo-blazor-headelement.azurewebsites.net/
Mozilla Public License 2.0
158 stars 11 forks source link

Crashes on Linux .NET 5 #18

Closed mysteryx93 closed 3 years ago

mysteryx93 commented 3 years ago

I had been using this library on .NET 3.1 on Ubuntu for a while, but after upgrading to .NET 5,0, I get this crash. Removing Toolbelt.Blazor.HeadElement from the project allows it to run. It also was running fine on my Windows development machine.

SyntaxError: Unexpected token , in JSON at position 30
Unhandled exception rendering component: Unexpected token , in JSON at position 30
warn: Microsoft.AspNetCore.Components.Server.Circuits.RemoteRenderer[100]
at Microsoft.AspNetCore.Components.RenderTree.Renderer.GetErrorHandledTask(Task taskToHandle)
""at Microsoft.AspNetCore.Components.ComponentBase.RunInitAndSetParametersAsync()
""at Microsoft.AspNetCore.Components.ComponentBase.CallStateHasChangedOnAsyncCompletion(Task task)
""at Toolbelt.Blazor.HeadElement.Link.OnParametersSetAsync()
""at Toolbelt.Blazor.HeadElement.HeadElementHelperService.SetLinkElementsAsync(LinkElement[] elements)
""at Toolbelt.Blazor.HeadElement.HeadElementHelperService.GetDefaultLinkElementsAsync()
""at Toolbelt.Blazor.HeadElement.HeadElementHelperService.InvokeJSAsync[T](String identifier, Object[] args)
""at Microsoft.JSInterop.JSRuntime.InvokeAsync[TValue](Int64 targetInstanceId, String identifier, Object[] args)
"" at e.connection.onreceive (https://store.spiritualselftransformation.com/_framework/blazor.server.js:1:17296)
"" at e.processIncomingData (https://store.spiritualselftransformation.com/_framework/blazor.server.js:1:24211)
"" at e.invokeClientMethod (https://store.spiritualselftransformation.com/_framework/blazor.server.js:1:26273)
"" at Array.forEach (<anonymous>)
"" at https://store.spiritualselftransformation.com/_framework/blazor.server.js:1:26303
"" at e.beginInvokeJSFromDotNet (https://store.spiritualselftransformation.com/_framework/blazor.server.js:1:70021)
"" at new Promise (<anonymous>)
"" at https://store.spiritualselftransformation.com/_framework/blazor.server.js:1:70055
"" at Object.query (https://store.spiritualselftransformation.com/_content/Toolbelt.Blazor.HeadElement.Services/script.min.js:1:1674)
"" at JSON.parse (<anonymous>)
mysteryx93 commented 3 years ago

Never mind, I forgot to copy/update "wwwroot/_content/Toolbelt.Blazor.HeadElement.Services" onto the web server, as those are only dynamically served in development. Now it's working.