Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/21.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs UI路由器解决无法使用基于组件的状态_Angularjs_Typescript_Dependency Resolver - Fatal编程技术网

Angularjs UI路由器解决无法使用基于组件的状态

Angularjs UI路由器解决无法使用基于组件的状态,angularjs,typescript,dependency-resolver,Angularjs,Typescript,Dependency Resolver,背景: 在我正在开发的一个应用程序中,我们有一个组件正在两个地方使用。在一个地方,它是从材料设计底板系统调用的。在另一个例子中,我们通过ui路由器状态系统直接使用该组件 这是引起麻烦的设置。我已经有了一个angular.module语句,它设置了所有正确的包依赖项-我已经和我的团队在这个应用程序上工作了几个月,问题特别是下面的代码,这就是我刚刚添加的代码 路线 awesomefeature.ts 问题: 每当我尝试直接导航到“Awesome Feature”时,不仅我的HTML没有呈现,我还会收

背景:
在我正在开发的一个应用程序中,我们有一个组件正在两个地方使用。在一个地方,它是从材料设计
底板系统调用的。在另一个例子中,我们通过ui路由器状态系统直接使用该组件

这是引起麻烦的设置。我已经有了一个
angular.module
语句,它设置了所有正确的包依赖项-我已经和我的团队在这个应用程序上工作了几个月,问题特别是下面的代码,这就是我刚刚添加的代码

路线

awesomefeature.ts

问题: 每当我尝试直接导航到“Awesome Feature”时,不仅我的HTML没有呈现,我还会收到以下控制台错误:

angular.js:14525 Error: [$injector:unpr] Unknown provider: awesomeDefaultsProvider <- awesomeDefaults <- awesomeFeatureCtrl  
http://errors.angularjs.org/1.6.4/$injector/unpr?p0=awesomeDefaultsProvider%20%3C-%20awesomeDefaults%20%3C-%20awesomeFeatureCtrl  
    at angular.js:66  
    at angular.js:4789  
    at Object.getService [as get] (angular.js:4944)  
    at angular.js:4794  
    at getService (angular.js:4944)  
    at injectionArgs (angular.js:4969)  
    at Object.invoke (angular.js:4995)  
    at $controllerInit (angular.js:10866)  
    at nodeLinkFn (angular.js:9746)  
    at angular.js:10154  

angular.js:14525错误:[$injector:unpr]未知提供程序:awesomeDefaultsProvider仔细查看您的错误后,我以前遇到过这个问题。试着改变这个

resolve: {
                awesomeDefaults: () => new Controllers.AwesomeDefaults(1, 2, 3)
            }
对此

resolve: {
                awesomeDefaults: /** ngInject */ () => new Controllers.AwesomeDefaults(1, 2, 3)
            }

正确注入awesomeDefaults。

我认为您需要将awesomeDefaults添加到组件绑定中。这是一个很好的建议,但没有任何效果-这只是继续生成未知的提供程序错误。
resolve: {
                awesomeDefaults: () => new Controllers.AwesomeDefaults(1, 2, 3)
            }
resolve: {
                awesomeDefaults: /** ngInject */ () => new Controllers.AwesomeDefaults(1, 2, 3)
            }