如何使用位于不同模块中的指令

Posted

技术标签:

【中文标题】如何使用位于不同模块中的指令【英文标题】:How to use directive that sits in a different module 【发布时间】:2013-01-02 16:28:16 【问题描述】:
angular.module('mod1', [])
  .directive('myDir', ($timeout) => 
    return 
      ///....
    
  );

angular.module('myApp', ['mod1'])
<html ng-app="myApp">

<body>
  <my-dir valu='blablabla' />
</body>

</html>

那么为什么这不起作用? 并说未知提供者:$compileProvider

但如果我将指令移动到 myApp 模块中,它会起作用

【问题讨论】:

您是否尝试在指令中的某处使用 $compile 服务?如果是这样,您需要注入它(就像使用 $timeout 一样)。 但是如果我把它移到 myApp 模块中它就不行了 你能发布一个 plunker 或 fiddle 吗? @Agzam,您的代码中的其他地方一定发生了什么事,因为我有 created a fiddle just like your code above 并且它工作正常。 【参考方案1】:

我认为只要正确提供了模块依赖项,它应该可以正常工作!

看看这个:http://plnkr.co/edit/Wvb7melvMOgXh3FyoVnx?p=preview

【讨论】:

以上是关于如何使用位于不同模块中的指令的主要内容,如果未能解决你的问题,请参考以下文章

一个模块中的 AngularJS 指令和另一个模块中的模板

如何使用位于父目录中的 eslint 插件模块?

如何使用 AngularJS 访问位于不同 js 文件中的变量数据

angularJs如何实现不同页面引入不同的js文件?

AngularJs将来自单独文件的多个指令注入一个公共模块

如何使用单个 solr 实例索引和搜索位于同一数据源中的两个不同表或 Solr 模板字段无法正常工作