[英]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.