gpt4 book ai didi

angular - 一个组件的调用方法 Angular 2/4

转载 作者:搜寻专家 更新时间:2023-10-30 21:23:34 26 4
gpt4 key购买 nike

我试图在另一个组件中使用一个组件的方法,但出现类似 No provider for xxComponent 的错误。我该怎么做?

import { FoldersService } from '../../_services/folders.service';
import { Component, OnInit, ViewChild } from '@angular/core';

@Component({
selector: 'app-folder-create',
templateUrl: './folder-create.component.html',
})
export class FolderCreateComponent implements OnInit {
constructor(
private http: Http,
private folderService: FoldersService,
) { }

ngOnInit() { }

saveFolder() {

}
}

-- Class FolderEditComponent
import { FolderCreateComponent } from '../folder-create/folder-create.component';
@Component({
selector: 'app-folder-edit',
templateUrl: './folder-edit.component.html',
styleUrls: ['./folder-edit.component.css'],
})
export class FolderEditComponent implements OnInit {
constructor(
private http: Http,
private folderService: FoldersService,
private folderCreate: FolderCreateComponent
) { }

ngOnInit() { }

// How can I do here for calling method saveFolder() of the component FolderCreateComponent

// I try this :
folderCreate.saveFolder(); // But I got error : ERROR Error: Uncaught (in promise): Error: No provider for FolderCreateComponent!

}

如何在组件 FolderEditComponent 中调用组件 FolderCreateComponent 的 saveFolder() 方法?

最佳答案

情况 1 - 当你想访问子组件的方法时,然后在父组件中 -

@ViewChild(ChildComponent) childComponent: ChildComponent;

childComponent.methodName();

情况 2 - 当你想从子访问父方法时 -

构造函数(@Inject(forwardRef(() => ParentComponent)) private _parent: ParentComponent){}

只需使用this._parent.methodName()

关于angular - 一个组件的调用方法 Angular 2/4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44846188/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com