4
我试图将URL参数放入我的组件中以使用externsre服务进行搜索。我读过我可以使用angular2路由并使用RouteParams获取参数,但我不认为这是我需要的,因为我的角度应用程序的第一页是Razor视图。角2:如何从URL中获取参数而不使用路由?
我会尽力解释更好。 我的URL看起来像: http://dev.local/listing/?city=melbourne
我加载我的根组件在Razor视图的东西,如:
<house-list city = "@Request.Params["city"]"></house-list>
那么我的根组件上,我有:
export class AppComponent implements OnInit {
constructor(private _cityService: CityService) { }
response: any;
@Input() city: any;
ngOnInit() {
this.getHouses();
}
getHouses() {
this.__cityService.getHousesByCity(this.city)
.subscribe(data => this.response = data);
}
}
所以我期待我的组件中的“城市”获得从剃刀视图传递的字符串,但它是未定义的。
我在做什么错?有没有不使用路由获取参数的方法?如果没有,使用剃刀的正确方法是什么?
感谢Günter,由于某种原因,我忘记了我只能使用普通的JavaScript。这使得伎俩。关于传递给根组件的参数,我无法让它工作,你知道这是甚至可能吗?我认为,因为该标签不是Angular模板的一部分,它不是由Angular处理,而只是用适当的根组件替换它? –