В настоящее время я работаю над школьным проектом, и моя программа почти полностью функционирует. Проблема в том, что я не могу понять, как передать собранные пользовательские данные из одного компонента в следующий, чтобы отобразить их на странице профиля. Я пробовал кое-что с @Input () и тому подобное, но мне кажется, что мне лучше спросить здесь и научиться чему-то, чем правильно угадывать.
login( username, password ) {
//returns succes/error
//return data
console.log(username, password)
const url = `https://svsdb.woodl.nl:5555/api/public/auth/login`;
const data = {
email: username,
password: password,
}
console.log(data)
this.httpClient.post(url, data).subscribe(
(res:any)=>{
console.log(res)
console.log(res.message)
this.token = res.data.token.value
this.readUser(res.data.user._id)
this.key = res.message
},
(error)=>console.log(error),
()=>console.log(),
)
}
readUser(userId) {
const url = `https://svsdb.woodl.nl:5555/api/user/read/${userId}`;
const options = {
headers: {
authorization: this.token,
}
}
this.httpClient.get(url, options).subscribe(
(res:any)=>{
console.log(res)
const user_data = res
console.log(this.key)
this.redirect(this.key)
},
(error)=>{
},
()=>{
}
)
}
Эти две функции являются частью LoginComponent, данные, которые я хочу передать моему ProfileComponent, представляют собой «user_data», которые я получаю во второй функции.
import { Component, OnInit, Input } from '@angular/core';
import { LoginComponent } from '../login/login.component';
@Component({
selector: 'app-profile',
templateUrl: './profile.component.html',
styleUrls: ['./profile.component.css'],
providers: [ LoginComponent ]
})
export class ProfileComponent implements OnInit {
constructor(
private loginComponent: LoginComponent
) { }
ngOnInit() {
const user_data = this.loginComponent.user_data;
}
}
Это весь мой файл profilecomponent.ts, как вы можете видеть, я пытался получить пользовательские данные, но это не работает, я очень плохо знаком со всем этим, и это последний шаг к завершению моего назначения, поэтому любая помощь был бы очень признателен.