Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/421.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用ionic解决旅行商问题:无法读取未定义的属性_Javascript_Typescript_Ionic Framework - Fatal编程技术网

Javascript 使用ionic解决旅行商问题:无法读取未定义的属性

Javascript 使用ionic解决旅行商问题:无法读取未定义的属性,javascript,typescript,ionic-framework,Javascript,Typescript,Ionic Framework,我正在创建一个离子应用程序,试图解决旅行推销员问题。 使用getMarker()从json文件获取位置的纬度和经度 getMarkers() { this.http.get('assets/data/markers.json') .map((res) => res.json()) .subscribe(data => { this.addMarkersToMap(data); }); } 和addMArkersToMap()将这些标记放在谷歌地图上。ang将这些位置的纬度和经度

我正在创建一个离子应用程序,试图解决旅行推销员问题。 使用getMarker()从json文件获取位置的纬度和经度

getMarkers() {
this.http.get('assets/data/markers.json')
.map((res) => res.json())
.subscribe(data => {
  this.addMarkersToMap(data);
});
}

和addMArkersToMap()将这些标记放在谷歌地图上。ang将这些位置的纬度和经度放置在阵列节点上

enter code here  addMarkersToMap(markers) {
for(let marker of markers) {
  let position = new google.maps.LatLng(marker.latitude, marker.longitude);
  console.log(position);
 this.nodes.push(position);
    console.log(this.nodes);

  var markerposition = new google.maps.Marker({position: position, title: marker.title});
  markerposition.setMap(this.map);
}
}

IM用遗传算法求解TSP我用的代码

我一直有问题

home.ts:431未捕获类型错误:无法读取未定义的属性“ga”

我如何着手解决这个问题

这是我的密码

从'@angular/core'导入{Component,ViewChild,ElementRef};
从'ionic angular'导入{NavController};
从'@angular/Http'导入{Http};
导入'rxjs/add/operator/map';
谷歌公司;
@组成部分({
选择器:“主页”,
templateUrl:'home.html'
})
导出类主页{
//让地图:任何;
@ViewChild('mapContainer')mapContainer:ElementRef;
地图:任何;
方向显示:任意;
方向服务:任何;
多段线路径;
节点:数组=[]
prevNodes:Array=[];
标记:数组=[];
持续时间:数组=[];
service=new google.maps.DistanceMatrixService();
构造函数(公共navCtrl:NavController,公共http:http,){
}
ionViewWillEnter(){
这个.displayGoogleMap();
这个.getMarkers();
//这个.getDuration();
这是一个节点;
这是持续时间;
}
//初始化谷歌地图
显示谷歌地图(){
让latLng=newgoogle.maps.latLng(14.5507592121.049493);
让mapOptions={
中心:拉特林,
disableDefaultUI:true,
缩放:15,
mapTypeId:google.maps.mapTypeId.ROADMAP,
//样式:[{“featureType”:“all”,“elementType”:“labels.text.fill”,“stylers”:[{“saturation”:36},{“color”:“{000000”},{“lightness”:40}]},{“featureType”:“all”,“elementType”:“labels.text.stroke”,“stylers”:[{“visibility”:“on”},{“color”:“{“lightness”:16},{“featureType”:“all”,“elementType”:“labels.icon”,“stylers”:“visibility”:“off”{{“featureType:“administrative”,“elementType:“geometry.fill”,“stylers:”{“color:”{“lightness:”20}}},{“featureType:”administrative”,“elementType:”geometry.stroke,“stylers:”{“color:”000000},{“lightness:”17},{“weight:”1.2},{“featureType:”景观”,“elementType:”geometry”,“stylers:“{“color:”20},{“lightness:”{特征类型“:”景观。人造“,”元素类型“:”几何体。填充“,”样式器“:[{”可见性“:”on“},{”颜色“:”景观。人造“,”元素类型“:”几何体。笔划“,”样式器“:[{”颜色“:”2f373a“},{”可见性“:”on“},{”特征类型“:”景观。自然。土地覆盖物“,”元素类型“:”几何体。填充“,”样式器“:{”颜色“:”{特征类型“:”景观.自然.土地覆盖“,”元素类型“:”几何.笔划“,”样式“:[{”颜色“:”自然.地形“,”元素类型“:”景观.自然.地形“,”元素类型“:”几何.填充“,”样式“:[{”可见性“:”在“},{”颜色“:”自然.地形“,”元素类型“:”几何.笔划“,”样式“:[{”可见性“:”在“},{”颜色“:”#15191b“}],{“featureType”:“poi”,“elementType”:“geometry”,“stylers”:[{“color”:“#000000”},{“lightness”:21}],{“featureType”:“road”,“elementType”:“geometry.fill”,“stylers”:[{“visibility”:“off”},{“color”:“F4545454”}],{“featureType”:“road”,“elementType”:“geometry.stroke”,“stylers”:“{“color”:“ad2b2b”},{“featureType”:“road”:labels.text.fill、“样式器”:[{“color”:“#eaeaea”}、{“visibility”:“off”}、{“featureType”:“road”、“elementType”:“labels.text.stroke”、“stylers”:[{“visibility”:“off”}]}、{“featureType”:“road.highway”、“elementType”:“geometry.fill”、“stylers”:[{“color”:“15e181”}、{“lightness”:17}、{“visibility”:“on”}、{“featureType”:“road.highway”;“elementType”:“road.highway”;“elementType”:”geometry.stroke“,”stylers“:[{“颜色”:“{“亮度”:29},{“重量”:0.2}},{“特征类型”:“道路.干线”,“元素类型”:“几何”,“样式”:[{“颜色”:“{”000000},{“亮度”:18},{“特征类型”:“道路.干线”,“元素类型”:“几何体.填充”,“样式”:[{“颜色”:“#8095a0},},},{“特征类型”:“道路.局部”,“元素类型”:“{颜色:{000000},{lightness:16},{featureType:“road.local”,“elementType:“geometry.fill”,“stylers:{visibility:“on”},{color:“{8095a0”},{”featureType:“transit”,“elementType:“geometry”,“stylers:{color:{000000},{”lightness:“19},{featureType:“water”,“elementType:“geometry”,“stylers:{”颜色:{:featureType:“water”,“elementType:“geometry.fill”,“stylers:[{“可见性”:“on”},{“color”:“#364350”}]}]
}
this.map=new google.maps.map(this.mapContainer.nativeElement,mapOptions);
}
getMarkers(){
this.http.get('assets/data/markers.json'))
.map((res)=>res.json())
.订阅(数据=>{
此.addMarkersToMap(数据);
});
}
addMarkersToMap(标记){
for(让标记中的标记){
让position=new google.maps.LatLng(marker.lation,marker.longitude);
控制台日志(位置);
这个.节点.推(位置);
log(this.nodes);
var markerposition=new google.maps.Marker({position:position,title:Marker.title});
markerposition.setMap(this.map);
}
}
ga={
//默认配置
“交叉高估”:0.5,
“突变率”:0.1,
“人口规模”:50,
“锦标赛规模”:5,
“精英主义”:没错,
“最大世代”:50,
“股票速度”:60,
//从HTML输入加载配置
//“getConfig”:函数(){
//交叉高估=0.5;
//该突变率=0.1;
//this.ga.populationSize=50;
//精英主义=正确;
//this.ga.maxGenerations=50;
// },
//在给定的种群中进化
“evolvePopulation”:函数(population、generationCallBack、completeCallBack){
//开始进化
var生成=1;
var evolveInterval=setInterval(函数(){
如果(生成)
export class HomePage() {
    // ....
    ionViewDidLoad(){
        // `this.ga` is called here, `this.ga` will throw the error since it is not the property of `HomePage`
    }
}

var ga = {
    // ....
};
export class HomePage() {
    // ....

    ga = {
        // ....
    };

    ionViewDidLoad(){
        // `this.ga` is called here, now `this.ga` shouldn't throw the error
    }
}