我可以在ncyBreadcrumb中拥有动态父级吗?

时间:2016-06-20 12:55:27

标签: javascript angularjs angular angular-ui-router

这是我的index.route.js,我希望我的父属性是动态的,就像用户点击它一样,然后它应该在更改状态之前显示确认提示。

.state('user.edit', {
  url: '/{id}/edit',
  params: {
    id: {value: 'new'}
  },
  templateUrl: 'app/user.html',
  controller: 'EditUserController',
  controllerAs: 'vm',
  ncyBreadcrumb: {
    label: 'Add/Edit User',
    parent: 'user.list'  //(this one i want dynamic)
  }
})

请帮帮我。

1 个答案:

答案 0 :(得分:1)

您需要收听var chart = (ExcelBarChart)chartWorksheet.Drawings.AddChart("changesVisualized", eChartType.ColumnClustered); chart.SetSize(1000, 500); chart.SetPosition(0,0); chart.Title.Text = row.Name + "Volume " + date1.ToString("MM/dd/yyyy") + " - " + date2.ToString("MM/dd/yyyy"); chart.DataLabel.ShowValue = true; var thisYearSeries = (ExcelChartSerie)(chart.Series.Add(worksheet.Cells["B4,D4,F4,H4,J4"], worksheet.Cells["B3,D3,F3,H3,J3"])); thisYearSeries.Header = "This Year's Volume"; var lastYearSeries = (ExcelChartSerie)(chart.Series.Add(chartWorksheet.Cells["A1,B1,C1,D1,E1"], worksheet.Cells["B3,D3,F3,H3,J3"])); lastYearSeries.Header = "Last Year's Volume"; 事件,并在用户选择取消时阻止它。在您的控制器中:

$stateChangeStart

BTW - vm.$on('$stateChangeStart', function(event, toState, toParams, fromState, fromParams, options){ console.log(event, toState, toParams, fromState, fromParams, options); // Here you can see what parameters are passed to the event callback function if( !confirm('are you sure?') ) { event.preventDefault(); } }); vm - 不确定如何在控制器中引用它。

您还可以将其绑定到应用程序$scope阶段内的$rootScope - 这样您就可以在全局级别上检测状态更改,而不仅仅是在特定状态内。您将使用run()来了解您正在进行的状态,并toState.name了解您要离开的状态的名称。