【发布时间】:2016-12-13 15:27:31
【问题描述】:
我有以下指令,它是一个按钮,并在单击按钮时尝试更改路径但没有任何反应。
app.directive('searchAgainButton', function ($location) {
return {
template: '<button class="searchAgainButton"><i class="fa fa-search" aria-hidden="true"></i><span> Search Again</span></button>',
link: function (scop, element, attrs) {
element.on('click', function () {
$location.path('/index')
})
}
}
});
【问题讨论】:
-
你试过在作用域上使用 $apply 吗?
-
@AnirudhMangalvedhekar 不,我应该把 $location.path('/index') 放在下面吗?
-
$location未声明为依赖项。应该是app.directive('searchAgainButton', ['$location', function ($location) { // code here }]); -
试过 element.bind() 而不是 element.on() ?
-
element.bind 已弃用..它更好地使用
标签: angularjs angularjs-directive angular-ui-router