angularjs - 如何从 ts for 循环生成离子选择
问题描述
我是 Ionic 的新手。我想从 ts 文件在 html 文件中生成一个离子选择选项。在下面的代码中,我有一个 for 循环,它执行 7 次并给出 7 个不同的this.newDate
值。我希望每次执行循环时都会在 html 文件中创建一个离子选项。
viewTime(){
let url = 'http://api.timezonedb.com/v2.1/get-time-zone?key=8304HG08V&format=json&by=zone&zone=Asia/Kolkata';
this.http.request(url, this.config.options)
.map(res => res.json())
.subscribe((response: any) => {
console.log(response);
console.log(response.timestamp);
var data = response.timestamp - 19800 ;
const datePipe = new DatePipe('en-US');
const time = datePipe.transform(data*1000, 'h:mm a');
//const datePipe = new DatePipe('en-US');
const serverDate = datePipe.transform(response.timestamp*1000, 'dd/MM/yyyy');
if(time >='16:00 PM'){
data = data+172800;
console.log("hello")
}
else{
data = data+86400;
console.log("exit")
}
this.newDate = datePipe.transform(data*1000, 'dd/MM/yyyy');
for (var i = 1; i < 8; i++) {
var value = data+(86400*i);
this.newDate = datePipe.transform(value*1000, 'dd/MM/yyyy');
}
}, (err) => {
let alert = this.alertCtrl.create({
title: 'Error',
subTitle: 'Please check your credentials',
buttons: ['OK']
});
alert.present();
});
}
}
如何解决这个问题?
解决方案
但是你可以使用类似下面的东西。
样本.ts
export class Sample {
dates;
date;
constructor() {
this.dates = [];
}
viewTime(){
for (var i = 1; i < 8; i++) {
var value = data+(86400*i);
this.newDate = datePipe.transform(value*1000, 'dd/MM/yyyy');
this.dates.push(this.newDate);
}
}
}
示例.html
<ion-item>
<ion-label>Select a Date</ion-label>
<ion-select [(ngModel)]="date">
<ion-option *ngFor="let date of dates"> {{date}}</ion-option>
</ion-select>
</ion-item>
我为您创建了一个工作示例。
推荐阅读
- arduino - 我使用带有 Arduino 的 FSR 传感器收集的压力数据的测量单位是什么
- sql - 带 NULL 的外连接
- node.js - 如何从 lambda 函数中的代码发出警报
- javascript - 推送功能无法正常工作 localStorage Javascript vanilla
- sockets - 什么是与套接字和网络相关的“组”或“组地址”?
- javascript - 角度和重新运行脚本
- html - 用于从用户的网络摄像头录制视频的网络应用程序
- visual-studio - DAX Measure 仅显示特定组合的值
- javascript - Checkbox 的 Disabled 属性在 React 中不起作用
- python-3.x - 无法在 win 7 上安装 python-3.7.7