AngularJS / ui-router:$state.go在ng-click中不起作用

我有一个视图,我有以下代码
<input type="button" value="New Post" ng-click="$state.go('blog.new-post')">

目标是转换到新的状态,而不必使用href.不幸的是,上面的代码不会触发.

我还试图在控制器中包含$state以查看此视图​​:

app.controller('blogPostsController',function($scope,$stateParams,$http,$state) ...

但依然没有. transiction也似乎不起作用.

任何人有什么想法如何使这项工作?

编辑:我只能通过分配:

$scope.$state = $state;

在我的控制器内这似乎很丑没有其他方式可以访问$state而不分配给范围?

根据 https://github.com/angular-ui/ui-router/wiki/Quick-Reference#note-about-using-state-within-a-template,您可以将其添加到$rootScope中,因此它将在所有范围内可用,因此所有模板都可用
angular.module("myApp").run(function ($rootScope,$state,$stateParams) {
  $rootScope.$state = $state;
  $rootScope.$stateParams = $stateParams;
});

相关文章

ANGULAR.JS:NG-SELECTANDNG-OPTIONSPS:其实看英文文档比看中...
AngularJS中使用Chart.js制折线图与饼图实例  Chart.js 是...
IE浏览器兼容性后续前言 继续尝试解决IE浏览器兼容性问题,...
Angular实现下拉菜单多选写这篇文章时,引用文章地址如下:h...
在AngularJS应用中集成科大讯飞语音输入功能前言 根据项目...
Angular数据更新不及时问题探讨前言 在修复控制角标正确变...