Angularjs 以角度获取HTML

Angularjs 以角度获取HTML,angularjs,Angularjs,我开始学习Angular,我想使用JavaScript从文件中获取HTML模板,我不想使用ng include或任何其他指令,因为我没有真正的HTML,我只有一个JavaScript文件,其中包含REST服务提供的数据,我需要将HTML输出发送到我所在的页面,所以我在DOM中没有任何现有的元素 那么,我如何从另一个文件中获取HTML,并仅从JavaScript以一种角度使用它呢 看一看——听起来这就是你要找的。您可以从您的服务中获取html并将其编译为在AngularJS应用程序中工作。我认为您

我开始学习Angular,我想使用JavaScript从文件中获取HTML模板,我不想使用ng include或任何其他指令,因为我没有真正的HTML,我只有一个JavaScript文件,其中包含REST服务提供的数据,我需要将HTML输出发送到我所在的页面,所以我在DOM中没有任何现有的元素


那么,我如何从另一个文件中获取HTML,并仅从JavaScript以一种角度使用它呢

看一看——听起来这就是你要找的。您可以从您的服务中获取html并将其编译为在AngularJS应用程序中工作。

我认为您应该使用指令,正如James指出的那样,使用$compile。 你可以找一些医生

如果出于任何原因您不想这样做,我可以在我的应用程序上使用一个非常糟糕的角度代码的示例,向CGU显示另一个域的HTML

请注意,我们使用jQuery,这在Angular world中不是一件好事

  $http({
    method: 'GET',
    url: 'URL_HTML'
  }).success(function (data, status, headers, config) {
    var html_from_server = $.parseHTML(data);
    data = $(html_from_server.find('#container'));//look for the content of an ID.
    $('#content_cgu').html(data.html());// get an element on our page and replace the html content
  }); 

让我重新措辞。如何从另一个页面获取HTML并使用Angular将其存储在JS文件中的变量中?我该怎么办?var returnedHTML=

简单的解决方案:

var returnedHTML;
var url = 'http://www.google.com';
$http.get(url, { cache: $templateCache }).then(function(result){
   returnedHTML = result.data;
});

我今天只是在处理这件事。我想你的问题被误解了

您只需在代码中包含ng include,如下所示:

ng-include="'https://en.wikipedia.org/wiki/Special:Random'"

Angular将直接在页面中显示您的URL。

您的rest是否生成HTML输出?如果是这样,为什么不使用角度指令呢?指令是angularjs的强大功能。我在SharePoint内部使用它,我所拥有的只是一个从页面到JavaScript文件的链接,所以我不能只向页面添加HTML,我需要从另一个页面获取HTML并使用JavaScript绘制输出。现在我感到困惑$compile也可以按照建议正常工作。我想请你写一些代码,这样我们可以帮助你。让我重新措辞。如何从另一个页面获取HTML并使用Angular将其存储在JS文件中的变量中?我该怎么办?var returnedHTML=???谢谢James,但是在编译之前,我应该如何在Angular中获取HTML?有什么例子吗?您可以使用$http将外部数据拉入到Angular:-在线上有一些很好的例子-可能不是您正在做的事情,但应该足够开始了。