angularjs 重新初始化 tinyMCE textarea content_css 选项

angularjs reinit tinyMCE textarea content_css option

我对 angularjs 中的 tinyMCE 插件有疑问。 我有一个文本区域

<textarea ui-tinymce="tinymceOptions" ng-model="tinymceModel"></textarea>

单击具有另一个值的按钮后应该刷新选项 content_css。我知道你不能真正刷新选项,只是杀死并重新初始化但是当我尝试 tinyMCE.remove(); 它完全删除我的 textarea 然后当我使用 tinyMCE.init(); 我无法重新初始化它,或者我是只是太糊涂了?

感谢任何帮助:)

快速fiddle-示例我的意思:https://jsfiddle.net/QuadroKnoX/k6tacgwn/

您需要将一个配置对象(一个包含所有tinymce 配置参数的对象)传递给init 函数。最重要的是选择器,否则 tinymce 不知道要为哪个 html 元素创建编辑器。

示例:

tinymce.init({
  selector: 'textarea',
  height: 500,
  plugins: [
    'advlist autolink lists link image charmap print preview anchor',
    'searchreplace visualblocks code fullscreen',
    'insertdatetime media table contextmenu paste code'
  ],
  toolbar: 'insertfile undo redo | styleselect | bold italic | alignleft aligncenter alignright alignjustify | bullist numlist outdent indent | link image'
});

好的,我找到了一个解决方案,仅供其他也需要这些信息的人使用: 我使用了 $scope.$broadcast('$tinymce:refresh'),出于另一个目的,您也可以使用 $scope.$emit('$tinymce:refresh') 并将 "new" 选项放在它前面。