我正在使用Angular 2应用程序,该应用程序在我的应用程序中显示新闻项。新闻项目保存在数据库中,并使用Angular的[innerHTML]绑定加载到模板中。
当新闻项内容中包含嵌入式内容(例如Tweet)时,会出现问题,这需要加载javascript文件(例如//platform.twitter.com/widgets.js)。问题在于,即使在解析页面后,浏览器也不会下载文件。
有谁知道如何解决这个问题?
谢谢!
最佳答案
我认为,如果您有类似的东西,它将下载文件。
因此,当您获得新闻提要项时,如果新闻提要项上有任何数据,可以确定它是否嵌入了twitter,则可以对其进行检查,然后获取所需的js文件。
loadedURLs = {
// to hold a cache so you wont download more than once.
};
this.service.fetchDataFromDB()
.subscribe(data =>{
if(data.url.indexOf('twitter') != -1 && loadedURLs[data.url] == undefined){
loadedURLs[fileURL] = fileURL;
// send the file name you want or need.
this.downloadJS(JSFileURL);
}
});
downloadJS(fileURL){
var script = document.createElement('script');
script.src = (fileURL);
document.head.appendChild(script);
}
关于javascript - 在Angular 2 innerHTML绑定(bind)中下载脚本,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37347612/