在 ASP.Net Core 中,我尝试从 C# 代码构建 Google 地图的基本绑定。使用 JSInterop,我可以成功地将字符串传递给 JavaScript 函数,但是当我尝试传递更复杂的对象时,该对象在 JavaScript 函数中显示为空。
我部分遵循了本教程,并将其修改为使用 Google 地图而不是 Bing 地图。
正如在教程中一样,我找到了Google 地图的TypeScript 定义来帮助对绑定进行编码。
我有以下 razor 文件,当用户单击按钮时应加载地图:
@page "/sitemapper"
@inherits SiteMapperBase
<h3>Map</h3>
<div id="map" style="position: relative; width: 100%; height: 70vh;"></div>
<button class="btn btn-primary" @onclick="@OpenMap">Click me</button>
@code {
void OpenMap()
{
LoadMap();
}
}
Run Code Online (Sandbox Code Playgroud)
对应的.razor.cs文件有如下LoadMap方法:
protected async Task LoadMap()
{
LatLng center = new LatLng(40.417268, -3.696050);
MapOptions options = new MapOptions("map", center, 8);
await JSRuntime.InvokeAsync<Task>("loadMap", options); …Run Code Online (Sandbox Code Playgroud)