Angularjs 如何从自定义指令更改路径?有棱角的
我有下面的指令,这是一个按钮,并试图改变路径时,点击按钮,但什么也没有发生Angularjs 如何从自定义指令更改路径?有棱角的,angularjs,angularjs-directive,angular-ui-router,Angularjs,Angularjs Directive,Angular Ui Router,我有下面的指令,这是一个按钮,并试图改变路径时,点击按钮,但什么也没有发生 app.directive('searchAgainButton', function ($location) { return { template: '<button class="searchAgainButton"><i class="fa fa-search" aria-hidden="true"></i><span> Search Aga
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')
})
}
}
});
app.directive('searchAgainButton',函数($location){
返回{
模板:“再次搜索”,
链接:功能(scop、元素、属性){
元素上('单击',函数(){
$location.path(“/index”)
})
}
}
});
元素
未指向按钮。试试这个
var app = angular.module('myApp', []);
app.directive('searchAgainButton', function ($location) {
return {
restrict:"AE",
template: '<button ng-click="changePath()" class="searchAgainButton"><i class="fa fa-search" aria-hidden="true"></i><span> Search Again</span></button>',
link: function (scope, element, attrs) {
scope.changePath = function(){
$location.path('/index')
}
}
}
});
//html
<div ng-app="myApp">
<div search-again-button></div>
</div>
var-app=angular.module('myApp',[]);
应用程序指令('searchAgainButton',函数($location){
返回{
限制:“AE”,
模板:“再次搜索”,
链接:函数(范围、元素、属性){
scope.changePath=函数(){
$location.path(“/index”)
}
}
}
});
//html
您是否尝试在作用域上使用$apply?@Anirudhmanalgevedhekar否,我是否应该将其放在$location下面。路径(“/index”)?
$location
未声明为依赖项。应该是app.directive('searchAgainButton',['$location',function($location){//code here}])代码>尝试了element.bind()而不是element.on()?element.bind已被弃用。最好在上使用