1

我试图获得与ng-click+相同的终极功能ng-show,除了我希望节目滑入而不是通过切换突然出现display: block/none;。我有我需要的 jQuery 动画,并且我已经设置了ng-click. 我有两个问题,但第二个可能是第一个的结果:

问题 1

ng-click不改变 的值aside_users。我看到了SO#12202067,这似乎是一个类似的情况,但我不明白他们的自定义指令如何/为什么工作而本机ng-click没有。

我看到了scope: { … }after restrict: 'A',,但这似乎使$scope新创建的 DOM 元素中的值可用(我的元素已经存在并且显示得很好,但没有发生触发器/事件)。

信息框.html

<aside
  class="users"
  ng-include src="'views/users.html'"
  my-slide={"direction":"left","condition":"aside_users"}
></aside>

<i
  class="icon icon-user"
  ng-click="aside_users=!aside_users"
  ng-init="aside_users=false"
></i>

上面的代码是一个$compile'd 模板,在模板中的其他地方我打印出 $scope 参数的值aside_users(prints false)。

问题 2

my-slide似乎没有被启动/触发('elm: ', elmChrome 的控制台中没有出现的日志记录)。我验证了directives.js在我的index.html页面中链接。

编辑我记得要链接directives.jsindex.html但我忘了将它添加到资源数组中app.js

Plunkr

PS我不确定是否<aside attr={object}>严格有效,但合法的浏览器似乎在测试用例中接受它(没有费心检查IE)。我的替代计划是使用 2 个属性:<foo my-slide="direction" my-condition="boolean"></foo>

4

0 回答 0