angularjs - AngularJS 中的扩展指令(在链接之前和之后共享属性)

标签 angularjs tinymce angularjs-directive angularjs-scope

我有一个指令在其 LinkingFunction 中创建一个富文本编辑器。我用于富文本编辑器的小指令可以在 https://github.com/angular-ui/ui-tinymce/blob/master/src/tinymce.js 找到。 .

我需要用另一个指令扩展此指令,这将允许我配置默认选项并访问由前一个指令创建的元素。

如果可能的话,我想在不 fork 原始ui-tinymce的情况下做到这一点指令(链接到上面)。该指令有两个属性:

  • uiTinymceConfig我需要能够在该指令的 LinkingFunction 之前访问和配置它运行(在选项传递给 TinyMCE 之前)
  • tinyInstance我需要在通过该指令创建它后对其进行操作

我对 extending directives 进行了大量研究,以及 "Directive Definition Object" 可用的不同属性,如link , pre-link , post-link , compile ,和controller 。我已经尝试使用其中一些方法在两个指令之间共享属性,但我还没有找到适合我的需求的解决方案(见上文)。

如果不这样做就无法实现所需的功能,我很乐意 fork 这个原始指令代码。

最佳答案

所以我为你做了一些调查,并得出了 this Plnkr .

这将允许您覆盖为注入(inject)提供的值 - 请注意,您可以在依赖于子模块的模块中执行此操作,因此您可以为依赖于子模块的不同模块提供不同的配置,这将用于ui-tinymce 指令。

使用类似的原理,您应该能够通过简单地覆盖它来编辑 uiTinymceConfig 的配置值。你甚至可以做this如果您愿意,可以在基本模块中重写它。

如果您想在实例化后编辑实例本身,只需使用 ID 属性并直接在代码中的任何位置调用 tinymce.get('#IDattribute') 即可访问它。

关于angularjs - AngularJS 中的扩展指令(在链接之前和之后共享属性),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17106902/

相关文章:

javascript - 提交表单时 Angular 事件成功打开弹​​出窗口

javascript - TinyMCE onPaste 不设置内容,使用上下文菜单粘贴不会触发更改事件

javascript - TinyMCE & MoxieManager : url from MoxieManager won't be passed to TinyMCE

angularjs - angular.js 指令中的流程图具有零维度

javascript - AngularJS 外部 ng-repeat 不在内部 ng-repeat 上注册 watch

javascript - AngularJS 自定义指令中的自定义过滤器

javascript - 您好,我需要知道如何在 OpenShift for Angular 的 RAILS REST 应用程序中启用 CORS

javascript - 如何用 Angular + Masonry 修复重叠的砖 block ?

引导模式弹出窗口内的 angularjs 表单

html - TinyMCE + html5 图,img & figcaption 插件/插入