好的,到现在为止我必须为电子邮件创建一个正文。
我需要一个模板,用我已经拥有的数据(js Object)插入它,并在变量中生成html字符串,这样我就可以将这个主体发送到服务器了实际上是发送电子邮件。
我不确定使用其他模板引擎,例如把手来生成这个html。
有没有办法使用角度2模板引擎?请记住,我不需要显示它,我只想将其保存在内存中。
如果我不能使用它我应该使用什么?有没有最知名的或推荐的aprouch?
答案 0 :(得分:0)
不确定为什么需要它,但这里有一些想法:
import {Component, NgModule, Input, VERSION, ChangeDetectorRef} from '@angular/core'
import {BrowserModule} from '@angular/platform-browser'
import {Injectable, ComponentFactoryResolver, ApplicationRef, Injector} from '@angular/core';
@Component({
selector:'my-cmp',
template: 'here is {{title}}'
})
export class MyComponent {
@Input() title: string;
}
@Component({
selector: 'my-app',
template: `
<input #inp>
<button (click)="create(inp.value)">Create</button>
`,
})
export class App {
constructor(private componentFactoryResolver: ComponentFactoryResolver,
private appRef: ApplicationRef,
private injector: Injector) {
}
create(title) {
let factory = this.componentFactoryResolver.resolveComponentFactory(MyComponent);
let ref = factory.create(this.injector);
ref.instance.title = title;
this.appRef.attachView(ref.hostView);
console.log(ref.location.nativeElement);
this.appRef.detachView(ref.hostView);
}
}
@NgModule({
imports: [ BrowserModule ],
declarations: [ App , MyComponent],
entryComponents: [MyComponent],
bootstrap: [ App ]
})
export class AppModule {}