gpt4 book ai didi

javascript - AngularJS UI 状态提供者解析状态

转载 作者:行者123 更新时间:2023-11-29 21:36:23 25 4
gpt4 key购买 nike

尝试利用 AngularJS UI 状态并使用 resolves 来设置变量。我目前在我的 app.js 中有这个 --

var stateConfig = ['stateHelperProvider', function(stateHelperProvider) {
stateHelperProvider
.state({
name: 'events',
url: '/' + artistSlug,
templateUrl: "/templates/events/events.html",
controller: "EventsCtrl",
resolve: {
artist: function(artist) {
return artist.getArtist();
}
}
});

在 EventsCtrl 中我有以下 --

    angular.module('artist.events.controllers', []).
controller('EventsCtrl', ['$filter', '$rootScope', '$scope', '$state', '$stateParams', '$location', 'artist', function($filter, $rootScope, $scope, $state, $stateParams, $location, artist) {
$scope.artist = artist;

在我的本地开发机器上,它正确解析。然而在 prod 中,$scope.artist 什么都不返回。我相信这可能与基于预编译和缩小的编译有关。不确定如何修复。想法?

最佳答案

除非你使用像 ng-annotate 这样的构建工具,您必须为 resolve 属性提供 DI 注释,即

resolve: {
artist: ['artist', function(artist) {
return artist.getArtist();
}]
}

我会考虑重命名您的 resolve 属性,使其与您的 artist 服务不同。至少这样,您会收到有关未解析提供程序的错误。我会选择像 eventArtist 这样的东西。

关于javascript - AngularJS UI 状态提供者解析状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34734774/

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