我有一个包含以下内容的输入字段
<textarea id="textfield" ng-bind="emojiMessage.rawhtml | colonToCode"></textarea>
如果我从ng-dialog中删除它会很好,但是当我把它放在ng-dialog上时它会失败。请问有什么可能是错的,或者我错过了更好的方法吗?
<script type="text/ng-template" id="firstDialogId">
<textarea id="textfield" ng-bind="emojiMessage.rawhtml | colonToCode"></textarea>
</script>
======= EDITTED ======== 这是我的控制器
.config(['ngDialogProvider', function (ngDialogProvider) {
ngDialogProvider.setDefaults({
className: 'ngdialog-theme-default',
closeByDocument: false
});
}])
.controller('DialogCtrl', function ($scope, $rootScope, ngDialog, $timeout) {
$scope.open = function () {
ngDialog.open({ template: 'firstDialogId' });
};
$rootScope.$on('ngDialog.setPadding', function (event, padding)
{
angular.element( document.querySelector('.paddingHeader') ).css('padding-right', padding + 'px');
});
})
========此控制器定义了emojiMessage.rawhtml
.controller('emojiController', ['$scope', function($scope) {
$scope.emojiMessage={};
答案 0 :(得分:0)
您的emojiController不在对话框的范围内。将ngDialog逻辑移动到emojiController,并设置范围:$ scope。现在应该包括emojiController的范围。
$scope.emojiMessage={};
$scope.open = function () {
ngDialog.open(
{ template: 'firstDialogId',
scope: $scope
}
);
};
我在这里添加了一个plunker示例: https://plnkr.co/edit/U25PdXhSwXhxqJeQXcM6?p=preview