【发布时间】:2014-01-21 18:38:06
【问题描述】:
您好,我发现代码示例显示了如何在特定状态下打开模式窗口: https://github.com/angular-ui/ui-router/wiki/Frequently-Asked-Questions#how-to-open-a-dialogmodal-at-a-certain-state
但我不知道如何将 $modal 和 $scope 注入:
angular.module('my-module',['ui-router']).config(function($stateProvider, $modal, $scope))
这不起作用,我还读到: how to inject dependency into module.config(configFn) in angular
所以我知道我们只能注入提供程序和常量。但是如何运行该示例:
`$stateProvider.state("items.add", {
url: "/add",
onEnter: function($stateParams, $state, $modal, $resource) {
$modal.open({
templateUrl: "items/add",
resolve: {
item: function() { new Item(123).get(); }
},
controller: ['$scope', 'item', function($scope, item) {
$scope.dismiss = function() {
$scope.$dismiss();
};
$scope.save = function() {
item.update().then(function() {
$scope.$close(true);
});
};
}]
}).result.then(function(result) {
if (result) {
return $state.transitionTo("items");
}
});
}`
附言 我的目标是在用户更改 url 地址时打开新的模块窗口..
【问题讨论】:
-
我注意到你正在使用 ui-router,但你还没有将 ui.router 注入到你的模块依赖中......
-
这只是来自 angular-ui 常见问题的示例。我没有遇到问题,但我只需要在用户更改 url 时打开模式窗口。例如,当用户添加登录时,我只打开新的模式窗口......就是这样。
标签: angularjs angular-ui angular-ui-router