gpt4 book ai didi

angularjs - ng-include 与 ui-router 中的 $state.go() 不起作用

转载 作者:行者123 更新时间:2023-12-03 06:55:07 25 4
gpt4 key购买 nike

我有这个:

<ng-include src="'app/components/widgets/buttonbar.html'"></ng-include>

其中包括来自/customers 路由和/customers/:id 路由的按钮。我可以动态添加带有操作的按钮。当我去找客户时,我使用此服务界面添加按钮:

  this.buttons = []
this.addButton = function(id, title, classes, href, action, sortOrder){
console.log(this.buttons)
var button = {};
var pushViable = true;
button.id = id
button.title = title
button.classes = classes
button.href = href
button.action = action
button.sortOrder = sortOrder
angular.forEach(this.buttons, function(index, sort){
if(button.sortOrder === sort){
toastr.error('Button Sort Order Exists')
pushViable = false;
}
})
if(pushViable === true){
this.buttons.push(button)
this.buttons = sortButtons(this.buttons)
$rootScope.$broadcast('buttonBar:update')
}
}

就像我的客户列表中的那样:

buttonSvc.addButton('newCustomer','New Customer', 'button small', '#','newCustomer()',0)

$scope.newCustomer = function(){
var customerModal = $modal.open({
templateUrl: 'app/customers/newCustomer.html',
controller: 'customerModalCtrl',
windowClass: 'small'
})

customerModal.result.then(function(){
$rootScope.$broadcast('customer:update')
})
}

(从 gi​​thub 上的 pineconellc 的 ui-foundation 的模态中执行此操作)

  buttonSvc.addButton('goBack','Go Back', 'button small', '#','toTheGrid()',2)

但是,在以下代码生效的情况下,此按钮不起作用:

  $scope.toTheGrid = function(){
$state.go('customers.list')
}

如果我只是制作一个常规按钮并使用该功能,它就可以正常工作。所以我有一个问题。

由于我现在已经悬赏,如果您想查看更多代码,请询问,我将发布相关来源。

最佳答案

看两个按钮:

<button ng-click="foo()">click</button>
<button ng-click="{{'foo()'}}">click</button>

第一个工作,第二个不工作。 (生成的html是一样的)请参阅:http://plnkr.co/edit/znFa6lGUGmQ0bYw097zH?p=preview原因很简单 - 在第二种情况下,“foo()”被视为基本字符串。

因此只需修改代码以将函数传递给 addButton 即可。

关于angularjs - ng-include 与 ui-router 中的 $state.go() 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30294090/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com