我的角度有问题,这里有两个组成部分:
我在部分UserNow
中有一个属性MyApp
,我想通过组件UserNow
设置属性LoginPage
的值。怎么做?
我试过(但没有给出任何影响)
Import {MyApp} from '../../app/app.component';
@Component({
selector: 'page-login',
templateUrl: 'login.html'
})
export class LoginPage {
public app: any;
login() {
...
this.app = MyApp;
this.app.userNow = MyValue;
...
}
}
答案 0 :(得分:13)
有几种方法可以做到。
1)使用服务:服务通常在应用程序中有一个实例,可以用来轻松地在组件之间共享数据。 例如。创建一个服务userService并将其注入您想要使用它的组件中。
2)使用Emit:Emit用于在应用程序中发出事件并采取相应的操作。
expression = expression.replace(/[a-z]+|[A-Z]+/g, "v["/$1/"]").replace(/[\(|\|\.)]/g, "");
可以对事件发射采取两种行动。
this.eventInChild.emit(data);
在服务中它是这样的:
<child-component (eventInChild)="parentFunction($event)"></child-component>
答案 1 :(得分:4)
像@SaUrAbHMaUrYa解释的那样,你可以从子节点向父节点发送数据,我会这样做:
父
Provider 1:
Ms. Smith 35 F Portland,OR Cardiac
Adam Jacobs 27 M San Francisco, CA Gynecology
Emily Lo 19 F Portland,OR Ortho
Frances Wu 33 F Dallas, TX ENT
Provider 2:
Clara Smith 35 F Portland,OR Cardiac
Bill White 29 M San Francisco, CA Ortho
Emily S. Lo 19 F Portland,OR Ortho
Dev Patel 22 M Dallas, TX Neuro
孩子:
<page-login (on_user_has_logged_in)="userNow = $event"></page-login>