Вы можете попробовать сделать это автоматически, используя changeEvent элемента select.В моем решении я удалил кнопку, поэтому начинайте загрузку, когда выбираете опцию.И важно сделать отписку с помощью оператора first () в обозревателе.
component.ts:
const options = [{
value: null,
key: 'Select the Option ...'
},{
value: 'https://api.myjson.com/bins/1g7sq4',
key: 'Names'
}, {
value: 'https://api.myjson.com/bins/16r07g',
key: 'Details'
}, {
value: 'https://api.myjson.com/bins/1c3wng',
key: 'Numbers'
}, {
value: 'https://api.myjson.com/bins/18py7w',
key: 'Array'
}]
strData:String='';
Name:string[]=[];
constructor(private netService:NetService){}
getData(url: string): void {
this.netService.getData(url).pipe(
first(),
tap(res => (this.strData =JSON.stringify(resp)))
).subscribe()
}
view.html
<div class="container">
<label>Select:</label>
<select class="form-control" #select (change)="getData(select.value)">
<option *ngFor="let option of options" [value]="option.value">{{option.key}}</option>
</select>
{{strData}}
</div>