我需要通过单击函数绑定打印动态html。我使用分配给范围变量的$sce.trustAsHtml。以下是我的代码供参考。我找不到为什么指令在我的情况下不起作用。请帮我解决这个问题。
app.js
angular.module('starter', ['ionic', 'starter.controllers', 'starter.services'])
.config(function($stateProvider, $urlRouterProvider) {
.state('groupchat', {
url: '/groupchat',
templateUrl: 'templates/groupchat.html',
controller: 'GroupChat',
controllerAs: 'GC'
})
})
.run(function($rootScope, $location, SharedProperties) {
SharedProperties.sharedObject = {
unread: 0,
subscriptions: [],
}
});groupchat.js //控制器
angular.module('starter.controllers')
.directive('dynamic', function ($compile) {
return {
restrict: 'A',
replace: true,
link: function (scope, ele, attrs) {
scope.$watch(attrs.dynamic, function(html) {
ele.html(html);
$compile(ele.contents())(scope);
});
}
};
})
.controller('GroupChat', function($rootScope, $scope, $sce, $compile) {
$scope.trustedHtml = $sce.trustAsHtml('<span ng-click="testAlert()">Submit</span>');
$scope.testAlert = function () {
alert('testing');
};
});groupchat.html
<ion-view>
<div dynamic="trustedHtml"></div>
</ion-view>发布于 2016-05-17 16:23:32
<div dynamic= "{{trustedHtml}}"> ??我想,如果这是问题所在,而不是hte内容,它将绑定字符串"trustedHtml“,但是在您的情况下,它仍然在工作/显示。
https://stackoverflow.com/questions/37281102
复制相似问题