私のフォームからのユーザー入力に基づいて、if文のリストを埋め込むための簡単なWebアプリケーションを構築しようとしています。残念ながら、送信されたデータの要素は、ユーザーが送信をクリックする前に技術的に定義されていないため、何もできません。とにかくこれを回避するために私にはありますか?そうでない場合は、どうすればいいですか?私はAngularとTypescriptにはかなり新しいです。あなたは全体のコードをチェックしたい場合 ここに私のレポです:https://github.com/mlzaleski/VoogdVoogd-project(Angular2/4)エラーの回避TypeError:nullのプロパティを読み取ることができません
マイ送信者のコンポーネント:
@Component({
selector: 'user-form',
templateUrl: './user-form.component.html',
styleUrls: ['./user-form.component.css']
export class UserFormComponent implements OnInit {
rForm;
constructor(
private fb: FormBuilder,
private userDataService: UserDataService,
) {
}
onSubmit(data) {
this.userDataService.pushData(data);
}
ngOnInit() {
this.rForm= new FormGroup({
name: new FormControl(""),
use: new FormControl(""),
duration: new FormControl(""),
yearOfLicense: new FormControl(""),
postcode: new FormControl(""),
licensePlate: new FormControl(""),
milageYear: new FormControl(""),
milageVehicle: new FormControl(""),
passengerCare: new FormControl(""),
towing: new FormControl(""),
})
}
}
マイサービス:
Injectable()
export class UserDataService {
private userDataSubject: BehaviorSubject<any>;
constructor() {
this.userDataSubject = new BehaviorSubject(null);
}
pushData(data) {
this.userDataSubject.next(data);
}
getData() {
return this.userDataSubject.asObservable();
}
}
受信コンポーネント:
export class UserDataComponent implements OnInit {
public userData = {};
public constructor(
private userDataService: UserDataService,
) {}
ngOnInit() {
this.userDataService
.getData()
.subscribe(data => {
this.userData = data;
// My If statements down here
// e.g. If (data.name === "Hello") {
Do something } - TYPE ERROR ' name' defined.
はconsole.log(データを)読んだものを与えますか?とtry:If(data.name && data.name === "Hello") – Wandrille
名前、使用、yearOfLicense [...] –