gpt4 book ai didi

javascript - 在 Angular 2 上显示来自其他组件的模态组件

转载 作者:行者123 更新时间:2023-11-30 15:23:56 25 4
gpt4 key购买 nike

我是 Angular 的新手,我有一个带有按钮的模态组件,在 (click) 上将模态的状态从隐藏更改为显示并显示。但是,我想在我的主要组件中包含此模态,因此我可以创建一个按钮,在主要组件上显示模态组件。

这是我的modalLink.ts:

import { Component,Input,trigger,state,style,transition,animate } from '@angular/core';

@Component({
templateUrl: 'modalLink.component.html',
styleUrls: ['modalLink.component.css'],
animations:[
trigger('Modal',[
state("show",style({'display':'flex', 'opacity':'1'})),
state("hide",style({'display':'none', 'opacity':'0'})),
transition("show <=> hide", animate( "200ms" ))
])
]
})

export class ModalLink {
private url:string = '';
private modal:string = 'hide';

private objectArea:any = []

private objectLevel:any = []

showModal(){
this.modal = 'show';
}

hideModal(){
this.modal = 'hide';
}

}

在我的 ma​​inComponent.ts 上,这是我所拥有内容的摘录:

import { ModalLink } from './modalLink.component';

@Component({
templateUrl: 'academy.component.html',
styleUrls: ['academy.component.css']
})

export class AcademyComponent {

@ViewChild(ModalLink) modalLink: ModalLink

asdf() {
this.modalLink.showModal();
}

}

和我的 ma​​inComponent.html,其中包含调用调用 showModal() 的 asdf 函数的按钮:

<div class="container-organize resource-content">
<button (click)="asdf()" class="btn-floating btn-large btn-new-resource"><i class="ai ai-plus"></i></button>

最佳答案

对于您的情况,您应该考虑利用 Angular-Material。Angular Material 已经为你实现了这个,只需这样使用它:

import {MdDialog} from '@angular/material';

constructor(public dialog: MdDialog) {}

openDialog() {
this.dialog.open(DialogOverviewExampleDialog); // DialogOverviewExampleDialog is another component
}

这里很简单 plunker

关于javascript - 在 Angular 2 上显示来自其他组件的模态组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43268217/

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