通过 ng-include 渲染字符串模板

2023-11-27

我正在尝试渲染一段 html,可在动态路线上使用,该路线是通过$http.get()调用,它返回一段html,

举个例子,我尝试加载这个 html 部分:

<h1>{{ pagetitle }}</h1>
this is a simple page example

我做了一个小小提琴来模拟这个问题,但为了简单起见,我保留了 http 调用,只是将 html 添加到范围的字符串中。

控制器是:

function Ctrl($scope) {
    $scope.data = {
        view: "<h1>whaaaaa</h1>"        
    }; 
}

页面html是这样的:

<div ng-app="">
  <div ng-controller="Ctrl">
    <div ng-include src="data.view"></div>
  </div>
</div>

问题是它不会将字符串添加到 html 文件(ng-include)中,但它显然会对由该字符串组成的 url 进行 http 调用。

那么是否可以只在包含中输入字符串?如果没有,对动态 url 进行 http 调用并将返回的 url 输入页面的正确方法是什么。

你可以用它来玩JSFiddle.


您可以将静态挂钩添加到模板缓存中,假设您有一个获取模板的服务:

myApp.service('myTemplateService', ['$http', '$templateCache', function ($templateCache) {
  $http(/* ... */).then(function (result) {
    $templateCache.put('my-dynamic-template', result);
  });

  /* ... */
}]);

然后,你可以这样做:

<div include src=" 'my-dynamic-template' "></div>

NOTE引用名称必须用单引号引起来,这总是让我......NOTE

请注意,在 Angular 尝试解析 url 之前,您必须将其分配给模板缓存。

EDIT:

如果动态 URL 逻辑足够简单,您还可以在 ng-include 中使用条件,例如

<div ng-include="isTrue() && 'template1.html' || 'template2.html'"
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

通过 ng-include 渲染字符串模板 的相关文章

  • 关闭特定url上的AngularJS窗口

    我是 angularjs 的新手 所以这个问题对于经验者来说可能看起来很愚蠢 但我真的无法执行此操作 任何人都可以告诉我如何在到达特定网址后从 webview 返回到应用程序 就像我正在打开一个浏览器中的窗口用于支付过程 所以我需要的是 当
  • 如何在 AngularJS/Bootstrap3 中禁用基于复选框的内容

    我正在创建一个表单 用户可以在其中配置重复事件 因此有大量控件 顶部是一个用于启用 禁用计划的复选框 如何禁用但不隐藏基于复选框的整个部分 如果选中 用户应该能够对时间表进行修改 如果没有检查 则不允许进行任何更改 我相当确定我可以在每个控
  • 在父指令和子指令之间传递参数

    我有导航菜单的父指令和菜单链接的子指令 像这样的事情 menu menu
  • 将复杂对象传递给 ui-sref 参数

    我需要这样的构建网址 列表 过滤器 状态 1 过滤器 类型 2 I do link a List a 在参数中传递复杂对象 如果传递简单对象 filter 1 可以 但我需要这个 state state list url list filt
  • 如何使用 Angular 1.5 中的组件为每个页面设置标题

    我最近开始使用 Angular 1 5 组件 我的应用程序中有多个页面 所以我决定创建一个
  • 如何访问 Angularjs 模板中的常量

    如何将公共js文件中定义的常量访问到不同模块的模板中 如果我在 MainModule js 中定义了一个这样的常量 该常量包含在主 html 文件的开头 gt var myApp angular module AC gt myApp con
  • 在 Chrome 扩展中使用页面的 Angular JS

    我有一个 HTML 页面 其中有一些使用 Angular 配置的 DOM 现在我正在构建一个 chrome 扩展来修改文本框中的值 element value newValue不起作用 因为文本框是用 Angular 设计的 在阅读了一些资
  • Protractor addMockModule 附加参数不起作用?

    这看起来非常非常简单 但我不明白为什么这个简单的代码不起作用 我正在添加一个模拟模块来在 Angular E2E 测试中模拟我的 API 后端 我正在使用量角器 1 6 0 我需要将附加参数传递给模拟模块 根据 Protractor 文档
  • 未捕获的引用错误:在 karma start karma.conf.js 上未定义 require

    使用 Karma 和 Jasmine 对 Rails 应用程序的 Angular 前端进行单元测试 看来我已经做了所有已知的事情来解决这个错误 并且我的 package json 中留下了一百万个依赖项 这是我的 Karma conf js
  • ui-sref 和变量状态参数名称

    我想呈现一个链接 例如 a 其中州名myState和钥匙myKey是变量 有办法做到这一点吗 我发现自己处于同样的情况 我也无法完成这一点 尝试使用 ng click 移动代码 并在 ng click 函数内部使用 stage go htt
  • AngularJS:服务、提供商、工厂

    之间有什么区别Service Provider and Factory在 AngularJS 中 从我得到的 AngularJS 邮件列表一个惊人的线程 https groups google com forum msg angular 5
  • Firebase 未定义?

    我正在开发一个 Angular 项目并使用 Firebase 但出现错误ReferenceError Firebase is not defined 但我不明白为什么 这是我的index html
  • Angularjs - 如何纠正来自另一个不依赖的模块的注入服务?

    我不明白模块化如何工作 I have 3 modules they are dependent on each other as shown in the picture App 模块包括 module1 和 module2 module2
  • 如何将一个“模型”映射到两个字段?

    我有一个具有 高度 属性的模型 我希望允许用户将其编辑为两个单独的字段 英尺 和 英寸 但让它们映射到以英寸为单位测量的单个属性 高度 表格看起来像这样 在这些字段和单个 高度 属性之间创建双向绑定的最佳方法是什么 HTML
  • 通过隔离范围进行 AngularJS 基于事件的通信

    在 AngularJS 中 一个指令如何使用基于事件的通信 emit broadcast and on 与另一个具有隔离范围的指令进行通信 我创建了两个指令 当从第二个指令中删除隔离范围时 第一个指令能够使用emit 与第二个指令成功通信
  • AngularJS 使用 PUT 上传图像,可能,如何?

    我正在尝试使用 AngularJS 通过 PUT 或 Post 请求上传图像 这可能吗 如果可以的话 下面如何不更改标头 仍然是 json 并且没有有效负载 这是我尝试过的 在我的控制器中 scope uploadFile function
  • Angular 和 Node JS 中的路由问题 [Angular]

    我有角度js的问题 我创建了 login html 和 home html 成功登录后我想将页面更改为 home html 我的路由不起作用 默认 url 是 localhost angular 我尝试路由 realpath 即 local
  • 如何使用 AngularJS、Devise 和 UI Router 全局实现身份验证?

    我对 Angular 很陌生 所以这可能是一个新手问题 我正在尝试实现一个简单的任务管理器 只是一个练习 以 Rails 作为后端 以 Angular 作为前端 到目前为止 我遵循了教程 一切正常 现在我想在全球范围内实施身份验证 这意味着
  • 如何使用 Angular Kendo UI 刷新网格数据源

    我使用 Angular Kendo UI 项目将 Telerik Kendo 网格与 Angular 结合起来 我有以下标记 div style height 600px div 以及我的控制器中的以下代码 scope thingsOpti
  • 在 Angular 中,promise 的 error 和 catch 函数在概念上有什么区别?

    我终于得到了 Angular Promise 错误处理 但这对我来说是违反直觉的 我期望错误由失败回调来处理 但我不得不使用 catch 我在概念上不太明白为什么执行 catch 而不是失败回调 我所期望的 SomeAsyncService

随机推荐