角度和加载网页的正确方式

angular and the correct way to load a webpage

本文关键字:方式 网页 加载      更新时间:2023-10-11

我一直在想办法解决这个问题。所以有一个网页,我想把另一个网页(或者更具体地说,从另一个页面加载一个页面)加载到div中。它基本上是我想显示的一个新的ticker。

我的问题是,实际地址存储在mongodb中,我可以检索它http://www.google.com

它存储在Webcont.url中(还有一个Webcont.name,其中包含每个页面的短名称)我本以为我能做一些类似的事情

    <div ng-include="Webcont.url"></div>
    //or
    <object data="Webcont.url"></object>
//or even
<object data="{{Webcont.url}}></object>

或者任何其他模型,但我一辈子都找不到方法。搜索词是url、include、load、object和data,这对我没有帮助。在谷歌上点击率很高的术语:)

不能只使用ng-include从另一个域加载内容,因为这会带来安全风险。你可以使用$se.trustAsResourceUrl(值)来解决这个问题。$se服务(严格上下文转义)通常用于安全地加载动态HTML。

好的,结果是相对直接的,所以我最终使用了ng-bind-html,奇怪的是,它需要一个类似嵌入其中的语句。我不确定我是否理解ng-bind-html。

您需要两个位,一个生成HTML类型标记的部分。所以在你的控制器中添加

var culine = '<iframe src="' + fside.surl + '" height="700" width="700"></iframe>';
        console.log(culine);
        return $sce.trustAsHtml(culine);

基本上,fside.surl可以是任何包含完整网址的字符串。第二件事是$se.trustAsHtml,它基本上允许您从其他域加载。html代码如下所示:

<div id="front-page" ng-bind-html="showpane('front')"></div>

在这种情况下,我使用一个名为showpane的函数来搜索前面列出的页面的网页,然后检查该url并返回。希望有帮助:)