Angular 6 服务从方法内部添加新实例
Angular 6 Service adding new instance from inside the method
我有一个看起来像这样的服务:
export class myService {
view1 = new Viewer();
constructor() { }
viewit(targetId, param2, param3) {
this.view1.initialize(document.getElementById(targetId));
this.view1.load(param2, param3).then(pco => {
// do stuff
})
.catch(err => console.error(err));
}
然后从组件中调用它:
this.myService.viewit('targetId', 'param2 here', 'param3 here');
如何将 view1 = new Viewer();
传递或定义为我需要的任何名称,而不必在服务中预先定义它?
以下情况如何:
为您服务:
export class myService {
constructor() { }
viewit(targetId, param2, param3, view: Viewer) {
view.initialize(document.getElementById(targetId));
view.load(param2, param3).then(pco => {
// do stuff
})
.catch(err => console.error(err));
}
并在你的组件中匹配它:
const view = new Viewer()
this.myService.viewit('targetId', 'param2 here', 'param3 here', view);
我有一个看起来像这样的服务:
export class myService {
view1 = new Viewer();
constructor() { }
viewit(targetId, param2, param3) {
this.view1.initialize(document.getElementById(targetId));
this.view1.load(param2, param3).then(pco => {
// do stuff
})
.catch(err => console.error(err));
}
然后从组件中调用它:
this.myService.viewit('targetId', 'param2 here', 'param3 here');
如何将 view1 = new Viewer();
传递或定义为我需要的任何名称,而不必在服务中预先定义它?
以下情况如何:
为您服务:
export class myService {
constructor() { }
viewit(targetId, param2, param3, view: Viewer) {
view.initialize(document.getElementById(targetId));
view.load(param2, param3).then(pco => {
// do stuff
})
.catch(err => console.error(err));
}
并在你的组件中匹配它:
const view = new Viewer()
this.myService.viewit('targetId', 'param2 here', 'param3 here', view);