栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

ng-include不适用于脚本类型=“ text / ng-template”

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

ng-include不适用于脚本类型=“ text / ng-template”

快速 的答案可能是:

<div ng-include="'tempTest'"></div>

可能您只是忘记了引用模板的单引号。

漫长 的答案:

不建议您访问控制器内部的DOM,因为代码会被

$scope.$apply()
调用淹没,您会遇到麻烦。考虑使用指令实现此功能。我试图从这里的代码创建起点

http://plnkr.co/UWUCqWuB9d1dn6Zwy3J3

var app = angular.module('plunker', ['ngAnimate']);app.directive('greeting', function($compile){  return {    restrict: 'E',    scope: {      name: '='    },    template: '<div>'+   '  <span>Hello {{name}}!</span>'+   '  <button ng-click="insert()">test</button>'+   '</div>',    link: function(scope, element, attrs) {       scope.insert = function() {         var container = angular.element('<div ng-include="'tempTest.html'"></div>');         element.before($compile(container)(scope));       }    }  }})app.controller('MainCtrl', function($scope) {  $scope.name = 'World';});<greeting name="name"></greeting>

模板元素已插入Hello World!每次单击按钮时为textnode。

旁注 您甚至不需要,

scope{ name:'='}
因为该指令将继承其周围的作用域,但是它是将控制器变量显式传递(实际绑定)控制器变量的更简洁的方法。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/483214.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号