我在 AngularJS 应用程序中使用 CKEditor 4。我有一个设置编辑器选项的 CKEditor 指令
angular.module('someMod', []).directive("ckeditor", CKEditor).factory('someFactory',someFactory);
...etc...
CKEditor.$inject = ["someFactory"];
function CKEditor(someFactory) {
...and in the link function the editor options includes...
extraPlugins: 'myplugin'
现在,如果我将自定义插件定义放入链接函数中,它可以正常工作,因为它可以毫无问题地引用 someFactory。但我想把所有的“myplugin”代码放到一个单独的插件文件中。这工作正常,除非它尝试引用 someFactory 失败。
编辑------工厂构造如下
someFactory.$inject = ['$http', '$log', ...];
function someFactory($http, $log, ...) {
return {
someFunction: someFunction,
...
};
function someFunction() {
// do some stuff
return 1;
}
任何人都知道如何使 someFactory 可用于 CKEditor 插件?
我找到了一种方法来做到这一点。我声明了一个全局变量,如
var angularObject = {};
然后在 CKEditor 指令链接函数中我添加
angularObject = someFactory
创建对注入指令的工厂的引用。然后在插件代码中我可以说类似的话
angularObject.someFunction
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句