Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/8.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
Angular 无法获取变量_Angular_Typescript - Fatal编程技术网

Angular 无法获取变量

Angular 无法获取变量,angular,typescript,Angular,Typescript,我正在尝试向ESP8266上的HTTP服务器发送POST请求。应传输4个变量:onhour、offhour、onminute、offminute。我想从我从“ng bootstrap”导入的timepicker组件中捕获变量 我已经尝试了几种方法来做这件事,但即使在30天的混乱之后,它也不会起作用。我对Angular很陌生,这是我学习Angular的第一步。另外,我已经在udemy上买了一门课程,但正如前面提到的,这是我的第一步 在html文件中,我可以显示变量,但我无法在typescript中

我正在尝试向ESP8266上的HTTP服务器发送POST请求。应传输4个变量:onhour、offhour、onminute、offminute。我想从我从“ng bootstrap”导入的timepicker组件中捕获变量

我已经尝试了几种方法来做这件事,但即使在30天的混乱之后,它也不会起作用。我对Angular很陌生,这是我学习Angular的第一步。另外,我已经在udemy上买了一门课程,但正如前面提到的,这是我的第一步

在html文件中,我可以显示变量,但我无法在typescript中使用它,它们甚至会更新:( 应实现以下生命周期: 输入on和OFF时间->单击保存->调用方法->通过post发送数据到后端->后端处理->代理

export class TimepickerComponent implements OnInit {
ontime = {hour: '', minute: ''};
offtime = {hour: '', minute: ''};

onhour  = this.ontime.hour;
onminute = this.ontime.minute;
offhour = this.offtime.hour;
offminute = this.offtime.minute;
postData = {};
url = '192.168.4.1/settimes';

constructor(private http: HttpClient) {
this.postData = {
onhour: this.onhour,
onminute: this.onminute,
offhour: this.offhour,
offminute: this.offminute
};
}
为了更好地查看代码堆,我上传了完整的代码: HTML-
TS-

您的
postData
对象是在构造函数中创建的,不包含对视图中变量的引用。您应该在
postTimes
函数中构造
postData
对象

请参见此示例:

var obj1 = { name : '' };

var val = obj1.name;

var data = { name : val };

val = 'bar';

console.log(data) // { name : ''}

var postData = { name : val };

console.log(postData); // { name: 'bar'}

你能在《我完成了》中重现你的问题吗?现在应该重现。你的stackblitz链接在哪里。在回购和重现上面分叉非常感谢!这是我需要的缺失逻辑。现在让我们开始Http请求^^