我只是想知道为什么建议使用 aUri.Builder而不是只使用字符串并将参数连接到它?
有人可以用一些简短的例子解释一下吗?
是因为效率吗(因为字符串是不可变的......等(但我们可以使用Stringbuilderor StringBuffer))
或者字符串涉及任何安全问题?
我正在使用 PrimeNG 的 p-dropdown 组件。当页面最初加载时,我正在设置,ng-model但下拉列表始终将第一个元素显示为所选元素。
超文本标记语言
<p-dropdown [options]="cities" [(ngModel)]="selectedCity" optionLabel="name" [showClear]="true"></p-dropdown>
<p>Selected City: {{selectedCity ? selectedCity.name : 'none'}}</p>
Run Code Online (Sandbox Code Playgroud)
TS
this.cities = [
{label:'New York', value:{id:1, name: 'New York', code: 'NY'}},
{label:'Rome', value:{id:2, name: 'Rome', code: 'RM'}},
{label:'London', value:{id:3, name: 'London', code: 'LDN'}},
{label:'Istanbul', value:{id:4, name: 'Istanbul', code: 'IST'}},
{label:'Paris', value:{id:5, name: 'Paris', code: 'PRS'}}
];
Run Code Online (Sandbox Code Playgroud)
即使我将其更改为其他城市,纽约也会在下拉列表中显示为所选城市。ng-model
Parent 的 ngAfterViewInit 是否总是在 child 的 ngAfterViewInit 之后运行?
<Parent>
<child></child>
<Parent>
Run Code Online (Sandbox Code Playgroud)
从父级的 ngAfterViewInit 中,我向 child 发送一些数据。在 Child 的 ngAfterViewInit 中,我正在订阅数据。但订阅未触发。在我的例子中,Child 是一个网格,在 ngOnInit 中有大量 api 调用。当我控制台登录时,我发现子级的 ngAfterViewInit 在父级的 ngAfterViewInit 之后运行。因此,当我从父级的 ngAfterViewInit 发出有效负载时,子级中的订阅者不会被配置,因为它的 ngAfterViewInit 在我从父级发出有效负载后运行。