0

我正在开发一个带有左右抽屉的移动应用程序,使用 mmenu ( http://mmenu.frebsite.nl/ ) 它工作正常,直到我决定动态填充右侧菜单的项目。我的应用程序基于 angularjs,并且正文中 angularjs 的所有指令都工作正常,除了内部<nav id="menu-right">的所有指令以某种方式,菜单定义中的 angularjs 指令不执行。我不确定这是否与执行 javascript 的顺序有关。任何帮助将不胜感激。谢谢 !!

更新(4 月 7 日)

jsfiddle中的一个例子http://jsfiddle.net/jmhostalet/wcK8L/

“我的控制器说”在正文中但不在 mmenu 中工作,在正文中打印“Hello”但在 mmenu 中什么也不打印

4

2 回答 2

0

您的小提琴在 #menu-right 但在他的兄弟元素上没有控制器初始化,因此 {{myCtrlVar}} 表达式无法访问控制器范围对象。

于 2014-04-12T21:55:36.397 回答
0

您遇到的问题是:

  1. 首先,未包含在声明中
  2. 您正在更改 DOM 而没有角度了解它,因此它没有机会编译大括号 {{myCtrlVar}}

创建指令似乎是额外的工作,但从长远来看,您可以更多地重用代码另外,如果您像我一样并且有不良的 JavaScript 习惯;使用框架来保持直截了当会更好。

我在下面的 plunker 中的解决方案显示了执行您所要求的“一种方法”。将整个 MMenu 代码移植到 Angular 模块中以获得更多参数和控制会很有趣。

(从未听说过 MMenu,但似乎是一个很酷的项目——我会更多地研究它)。

普朗克

(对不起,我不擅长使用提琴手)

于 2014-04-07T16:08:17.373 回答