我想我误解了Observables应该如何使用.我想要输入一个值,当值更改时,它应该发出新值.我认为这就是它们的用途,但是所有教程和文档似乎都没有这样做,但与此同时,我总是看到它们以这种方式应用.例如,当您订阅"FirebaseListObservable"时,以角度为单位,当firebase中的值更改时,它将触发订阅中的快照.我想为我自己的变量做这个.假设我只有一个字符串变量,当它发生变化时,会触发任何订阅.
当我点击<a...标签时,我的函数没有被调用。
我的组件中有以下代码:
public htmlstr: string;
public idUser:number;
this.idUser = 1;
this.htmlstr = `<a (click)="delete(idUser)">${idUser}</a>`;
public delete(idUser){
alert("id " + idUser);
}
Run Code Online (Sandbox Code Playgroud)
我的html
<div [innerHTML]="htmlstr"></div>
Run Code Online (Sandbox Code Playgroud)
但该函数delete未被调用且不显示警报。
该<div...是动态创建
我正在尝试在我的资产文件夹中创建一个HTML文件,该文件不过是一些标头标签,日期和功能列表,以用作我们网站的发行说明。我有一个角度模态组件,我想在每次调用该文件的路径时都读取该文件,而不是在组件本身中包含HTML的一种选择,这需要我们在每次更新发行说明时都重新部署。
如前所述,我最初将此作为组件HTML文件的一部分,但是每次都将其编译为javascript,并且如果不重新部署就无法更新。我尝试搜索以进行类似操作的所有操作似乎都在指示我只是这样做。
ReleaseNotes.html
<!DOCTYPE html>
<html lang='en' xmlns='http://www.w3.org/1999/xhtml'>
<body>
<h1>Example header one</h1>
<h3>03/01/2019</h3>
<h4>Patch 1.03 Title</h4>
<ul>
<li>Feature that was added</li>
<li>Feature that was added</li>
<li>Feature that was added</li>
</ul>
<hr>
Run Code Online (Sandbox Code Playgroud)
release-notes-modal.component.ts
export class ReleaseNotesModalComponent implements OnInit {
faTimesCircle = faTimesCircle;
contents: string;
constructor(public dialogRef: MatDialogRef<ReleaseNotesModalComponent>) {
//this.contents = System.IO.File.ReadAllText("ReleaseNotes.html");
}
ngOnInit() {
}
close() {
this.dialogRef.close();
}
}
Run Code Online (Sandbox Code Playgroud)