我正在尝试检查单选按钮,但它不起作用,下面是我的代码 我的模板,
<form [formGroup]="form" (ngSubmit)="onSubmit(form.value)">
<label class="control-label">ACCESS SETTINGS</label>
<input id="radio-2" [formControl]="form.controls['status']" value = 1 type="radio">
<label >Show to everyone</label>
<input id="radio-1" [formControl]="form.controls['status']" value = 2 type="radio">
<label >Show to friends</label>
<input id="radio-3" [formControl]="form.controls['status']" value = 3 type="radio">
<label f>Do not show now</label>
</form>
我的,
.subscribe(details1 => {
this.details1 = details1;
this.tocheck = this.details1.display;
});
this.form = fbld.group({
status: [this.tocheck],
});
我的服务,
import { Injectable } from '@angular/core';
import { Http, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
@Injectable()
export class GetAllList {
str = localStorage.getItem('social');
loc = JSON.parse(this.str);
id = this.loc._id;
private _productUrl = 'http://localhost:3000/getprofiledetails/'+this.id;
constructor(private _http: Http) { }
getList(): Observable<IDetails[]> {
return this._http.get(this._productUrl)
.map((response: Response) => {
return response.json().data;
});
}
}
在这里,我放了2个控制台,其中&#34;值得&#34;正在显示结果,但&#34; valueout&#34;显示未定义。这是如何声明&#34; tocheck&#34;一个全局变量?有人可以帮助我
答案 0 :(得分:0)
你的第一个console.log
的原因在于订阅。
如果您的observable获得details1
。
在收到详细信息之前,您的第二个console.log
已被执行。
所以你必须在subscribe
函数内改变单选按钮的状态!