würde ich diese Funktion in einem gemeinsam genutzten Dienst gestellt und es injizierbare machen und es überall verwenden.
@Injectable()
export class MyService{
public save(){
console.log('this is a testing file')
}
}
In Ihren Komponenten:
constructor(private myService:MyService){
// use it however you want
myService.save();
}
Und wenn Sie dies nicht tun, müssen Sie den Export in seperat, die nur funktionieren:
export function save() {
console.log('this is a testing file')
}
EDIT:
Wenn Sie den Status dieses Dienstes für alle Ihre Komponenten beibehalten möchten, müssen Sie ihn in Ihrer Top-Level-App bereitstellen.
Der Dienst verhält sich wie ein Singleton-Objekt, und alle untergeordneten Komponenten verwenden ihn, und der Status wird gespeichert.
Also gehen Sie zu Ihrem app.ts (wahrscheinlich) und stellen Sie den Dienst zur Verfügung und löschen Sie ihn aus der Liste aller untergeordneten Komponentenanbieter.
https://angular.io/docs/ts/latest/cookbook/component-communication .html –
Was ist Ihre Komponentenhierarchie? Welche Komponente ist Eltern und welche ist Kind? – hendrix
sample.ts ist übergeordnet, testing.ts ist ein Kind – Ived