Angular 6:如何将html文件包含到组件中?

时间:2018-05-26 02:06:17

标签: angular

在servlet环境中,我们可以包含这样的任何jsp:

<%@include file=" 'path-to-jsp' " %>

在我的角度项目中,我有一个包含许多组件的html表单。 我想将此表单包含在2个组件中(创建和更新)。

user-form.html:

<input type=".."...>
<input type=".."...>
<input type=".."...>
<select>...

创建-user.component.html:

<form>
   // insert content of 'user-form.html' at compile time
   <button>Create User</button>
</form>

更新user.component.html:

<form>
   // insert content of 'user-form.html' at compile time
   <button>Update User</button>
</form>

Angular 2+有没有办法实现这个目标?

注意:我使用反应形式

2 个答案:

答案 0 :(得分:1)

您可以在 create-user.component 中使用[innerHtml],例如

@Component({
    selector: 'my-template',
    template: `
<div [innerHtml]="myTemplate">
</div>
`})
export public class MyTemplate {
    private myTemplate: any = "";
    @Input() url: string;
    constructor(http: Http) {
        this.myTemplate = yourHTMl); //Load it using http
    }
}

答案 1 :(得分:0)

您可以将此用户表单添加为视图中的模板。这样绑定也将起作用 像下面的例子一样

<user-form [state] = 'Create/Update'></user-form>
<button>Create/Update</button>

,用户组件将状态作为输入来检查它是否处于编辑或创建状态。 并在UserFormComponent中将选择器称为“用户窗体”,并在当前组件中包括UserFormComponent。