我使用TinyMce angular指令在angularjs应用程序中启用Rich文本编辑。 https://github.com/angular-ui/ui-tinymce
该指令按预期工作。但我想整合save插件,这将允许我们调用自定义保存功能。 https://www.tinymce.com/docs/plugins/save/
我尝试通过以下init选项将角度控制器中的函数作为回调函数传递 save_onsavecallback:function(){console.log(' Saved'); }
示例代码如下(考虑到我的应用程序前面定义了一个非常庞大的init对象,其中包含 save 插件)
angular.module("app").controller('editpageContentController', ['$scope', 'pagesDataService', '$routeParams', 'toaster', 'tinymceGlobalOptions',
function ($scope, pagesDataService, $routeParams, toaster, tinymceGlobalOptions) {
tinymceGlobalOptions.save_onsavecallback = function () { $scope.submit(); }
$scope.tinymceOptions = tinymceGlobalOptions;
$scope.pgContent = {
pagePropertiesId: $routeParams.id,
pageTitle: "",
pageContent: ""
}
pagesDataService.getPageContent($scope.pgContent.pagePropertiesId).then(function (data) {
$scope.pgContent = data;
}, function (error) {
toaster.pop('error', "Page load failed", error);
});
$scope.submit = function () {
if ($scope.frmEditPageContent.$valid) {
pagesDataService.savePageContent($scope.pgContent).then(function (data) {
if (data)
toaster.pop('success', "Sucess", "Page saved successfully.");
}, function (error) {
toaster.pop('error', "Failure", error);
});
}
}
}
]);
不确定我是否可以在回调函数中调用$ scope.submit()..(我确实尝试过它没有工作,以及回调根本没有被触发)
我没有在控制台中看到任何错误。
答案 0 :(得分:2)
发现2个问题:
save_enablewhendirty: false,
添加到默认选项data-ng-controller="testController as tc"
更改为data-ng-controller="testController"
,因为您在应用中未使用controllerAs
。