我在我的应用程序中使用ckeditor。我想创建一个对话窗口,可以使用angularjs完全自定义。
直接进场不起作用。我尝试使用单个html元素创建对话框,如下所示。 Angular显示错误:指令“ngInclude'”所要求的控制器' ngInclude',无法找到!
54 elements: [
55 {
56 type: 'html'
57 html: "<div ng-include=\"'/ckeditor/dialogs/wiki_link.html'\"></div>"
58 onShow: (event) ->
59 onLoad: (event) ->
60 $compile(event.sender.parts.dialog.$)($scope)
61 onHide: (args...) ->
62 console.log('onHide', args)
63 setup: (args...) ->
64 console.log('setup', args)
65 commit: (args...) ->
66 console.log('commit', args)
67 }
68 ]
实际上任何替代方案都适合。
如果我可以从角度应用程序之外调用angularjs控制器方法。它也可以工作。
答案 0 :(得分:0)
解决。在指令内部,将ckeditor添加到我的页面,我将范围和$ injector传递给它。
传递美元注射器并不明显。我想,angular.injector(['MyApp'])会返回相同的注入器,但事实并非如此。由angular.injector(['MyApp'])返回的注入器无法注入$ location或$ state。并且它返回的$ templateCache是空的,除了页面在脚本[type = text / ng-template]标签中有很多模板。