根据 AngularJS 中文本区域的只读 属性 使 TinyMCE 只读?

Make TinyMCE readonly depending on the textarea's readonly property in AngularJS?

我需要制作一个只读的 TinyMCE 编辑器。这可以使用 textarea 元素的 readonly 属性 而不是处理 TinyMCE 的内部 API 来实现吗?

我正在使用 TinyMCE 4AngularJSui-tinymce 插件,这是我目前正在做的事情:

$scope.tinymceOptions = {

    setup: function(editor) {
        // only the focus event worked in my app
        editor.on('focus', function(event) {
            var editor = event.target;
            if (editor.readonly === true) {
                event.target.setMode('readonly');
            }
        })
    }
}

有更好的方法吗? "focus" 事件在我的应用程序中有效,但任何初始化事件都会更好。

如果像下面这样的东西能自动运行就好了。但即使在标准 TinyMCE fiddle(没有 AngularJS)中它也不起作用:

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

如果您希望能够在 textarea 标签上放置一个属性并让 ui-tinymce 将编辑器设置为 readonly 模式,您需要与 ui-tinymce 指令。

该指令是根据 MIT 许可发布的,因此您可以(作为替代)根据需要修改源代码以满足您的要求。