繁体   English   中英

asp.net core 2.0 spa angular + google map

[英]asp.net core 2.0 spa angular + google map

我如何在asp.net核心spa角度应用程序中实现谷歌地图,我已经包含脚本到我的index.cshtml但从角度访问它时出错。

import { Component } from '@angular/core';
declare var google: any;
@Component({
    selector: 'home',
    templateUrl: './home.component.html'
})
export class HomeComponent {
    constructor() {
        var mapProp = {
            center: new google.maps.LatLng(51.508742, -0.120850),
            zoom: 5,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };
        var map = new google.maps.Map(document.getElementById("googleMap"), mapProp);
    }
}

的index.html

@{
    ViewData["Title"] = "Home Page";
}

<app asp-prerender-module="ClientApp/dist/main-server">Loading...</app>
<script src="https://maps.googleapis.com/maps/api/js?key=[YOUR-KEY]" async defer></script>
<script src="~/dist/vendor.js" asp-append-version="true"></script>
@section scripts {
    <script src="~/dist/main-client.js" asp-append-version="true"></script>
}

处理请求时发生未处理的异常。

NodeInvocationException:Uncaught(在promise中):ReferenceError:google未定义ReferenceError:google未在新的HomeComponent中定义(F:\\ yo \\ ClientApp \\ dist \\ main-server.js:16281:25)

.cshtml

<app asp-prerender-module="ClientApp/dist/main-server"
         asp-prerender-data='@ViewData["token"]' >Loading...</app>//Storing 

    <script src="~/dist/vendor.js" asp-append-version="true"></script>
    @section scripts {
        <script src="~/dist/main-client.js" asp-append-version="true"></script>
    }

boot.server.ts

setImmediate(() => {
                    resolve({
                        html: state.renderToString(),

                        globals: {
                            tokenData: params.data
                        }

                    });

app.component.ts

declare var tokenData: any;
@Component({..})
export class AppComponent implements OnInit{
 ngOnInit() {
 let accessToken = tokenData;
 localStorage.setItem('token', accessToken);
     }
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM