创建一个模态指令,并将click事件绑定到angular js中
Creating a modal directive, and binding click event on it in angular js
我对angularjs绝对陌生,可能错过了很多概念。我正试图为我的应用程序创建一个模态指令,但有一些问题让我感到困扰,那就是如何与该指令交互。
我正在使用yeoman,并且我使用生成模式指令
yo angular:directive modal --coffee
所以我在指令目录中有这样的代码:
angular.module('myApp')
.directive('modal', () ->
templateUrl: 'views/partials/modal.html'
restrict: 'E'
link: (scope, element, attrs) ->
console.log 'link --test'
)
现在,在我的modal.html
部分中,我插入了一个锚标记,它将处理单击并提醒我一些事情。
<div><a href="" ng-click="foo()">Click Me</a></div>
现在我把foo
函数放在哪里?
我试过这样的东西,但没有运气
angular.module('myApp')
.directive('modal', () ->
templateUrl: 'views/partials/modal.html'
restrict: 'E'
link: (scope, element, attrs) ->
console.log 'link --test'
controller: ($scope) ->
$scope.foo = () ->
console.log 'clicked that anchor'
)
另一个问题是,我做得对吗?我的意思是,创建一个模态指令正确吗?或者指令的使用方式不同?
将foo()
放置在指令控制器中效果良好。你走在了正确的轨道上。指令是Angular中进行DOM操作的推荐位置,因此模式对话框是指令的一个很好的用例。
确保您的html初始化Angular并使用如下指令:
<div ng-app="myApp">
<modal></modal>
</div>
这是一个使用您的代码和上面的html的工作小提琴(为了简单起见,我直接使用了模板)。
相关文章:
- 在offline.js中绑定事件
- 如何在angularjs中检查Kendo树视图数据绑定事件
- 在页面高度更改时绑定事件
- 在页面重新加载后绑定事件,并仅使用Knockout.js、html和js创建新的html元素
- 使用onbeforeunload绑定事件
- 传递类似绑定事件的参数
- 如何对修改后的元素重新绑定事件
- 聚合物模板自动绑定:在模板绑定事件之前的核心选择火灾
- Jquery差异B/w Jquery绑定事件
- SessionStorage绑定事件
- extjs,如何在表单操作中绑定事件
- 模拟 Web 浏览器方向更改事件以使用 Jasmine 测试绑定事件处理程序函数
- 绑定事件发射器上的单个事件
- 如何在绑定事件期间排除元素
- 将鼠标悬停在位于我的页面上的 iframe 上的绑定事件,其中包含包含的 src
- 在 jQuery 中创建 DOM 之前的绑定事件
- 如何在页面加载时在 ajax 调用中绑定事件处理程序后触发事件
- 使用 ajax 加载的页面绑定和取消绑定事件处理程序
- 咖啡脚本构造函数中的绑定事件
- 将数据添加到动态创建的元素和绑定事件