サービスに変数を作成しようとしています。このサービスを挿入するたびにアクセスできます。しかし、BehaviorSubject型の私のlogin$
にデータを設定することはできません。私はthisとthisをチェックしましたが、どのように動作しているのかを理解するのが難しいです。BehaviorSubject undefined issue
コンポーネント
this.loginService.login = user.value.username; // OK
this.loginService.pass = user.value.password; // OK
this.loginService.emitLogin(user.value.username); // UNDEFINED - user.value.username is input field of form group
LoginService
export class LoginService {
public login: string;
public pass: string;
public login$ = new BehaviorSubject(this.login);
emitLogin(value: string) {
this.login$.next(value);
}
constructor(private http: Http) { }
}
また、私は私のDriverService
でlogin$
を使用したいと思います。ここで私が今まで行っているものです:
export class DriverService {
private login;
constructor(private http: Http, private loginService: LoginService) {
this.loginService.login$.subscribe(value => {
console.log(value);
this.login = value;
});
}
}
DriverServiceはどのようにして移入し、適切に、そして他のサービスでは、それを使用可能にすることができますか?
おかげ
'this.login'ような何かを...最初は' undefined'です:) '公共ログインしてください:サービス中= '' 文字列を'。 – Alex