Screenshot von Fehler:Fehler: „Eigentum '.get' existiert nicht auf Typ 'JSON' (HTML/Javascript/Angular2/Typoskript)
-Code, wo Fehler vorhanden ist:
import {Component, OnInit} from 'angular2/core';
import {Router} from 'angular2/router';
import {Hero} from './hero';
import {HeroService} from './hero.service';
import {RouteConfig, ROUTER_DIRECTIVES} from 'angular2/router';
import {HeroesComponent} from './heroes.component';
import {HeroDetailComponent} from './hero-detail.component';
import {DashboardComponent} from './dashboard.component';
import {SpreadSheetComponent} from './spreadsheeteditall.component';
import {SwitchUsersComponent} from './SwitchUsers.component';
import {BiddingPageComponent} from './BiddingPage.component';
import { Injectable } from 'angular2/core';
import { Jsonp, URLSearchParams } from 'angular2/http';
@Component({
selector: 'SearchAndDisplayComponent',
templateUrl: 'app/SearchDisplay.component.html',
styleUrls: ['app/SearchDisplay.component.css'],
providers: [HeroService],
directives: [ROUTER_DIRECTIVES]
})
@Injectable()
export class SearchAndDisplayComponent{
constructor(private jsonp: JSON) {}
search (term: string) {
// let ebayURL = 'http://en.wikipedia.org/w/api.php';
var params = new URLSearchParams();
params.set('search', term); // the user's search value
params.set('action', 'opensearch');
params.set('format', 'json');
params.set('callback', 'JSONP_CALLBACK');
// TODO: Add error handling
return this.jsonp
.get({ search: params })
.map(request => <string[]> request.json()[1]);
}
}
Kontext des Problems. ich versuche, eine Suchleiste für eine Website zu erstellen, die im Grunde ein Klon von ebay ist
Hier ist eine Frage, die ich früher mit Anbindung an das gesamte Projekt geschrieben (Plunker/full Projekt gezippt)
Search bar that hides results that aren't typed into it
HTML-Code, wie ich versuche, es durch den Klick auf eine Schaltfläche, um die Suchleiste neben anzuzeigen:
<button (click)="search(term)">Search</button>