【发布时间】:2017-11-16 09:14:24
【问题描述】:
每个人。我需要帮助解决此类问题。
我的 angular 1.x app.js 有这样的代码:
angular.module('app', []);
angular.module('app.test', ['app'])
.config(($stateProvider) =>
$stateProvider.state('base', {
url: '/',
controller: 'TestStateCtrl',
resolve: {
authenticationCheck: ['angularNg1Service', angularNg1Service=> {
angularNg1Service.test1();
}]
}
})
})
.run((angularNg1Service) => {
angularNg1Service.test2();
});
这是我的 angularNg1Service 的代码:
angular.module('app')
.service('angularNg1Service',
function (angularNg2Service} {
//some code here
}
我的 angularNg2Service 在 angular 1.x 模块的.run 功能启动之前被降级:
window['angular']
.module('app')
.factory(
'angularNg2Service',
upgradeAdapter.downgradeNg2Provider(AngularNg2Service)
);
但是,我有一条错误消息:
无法读取 null 的属性“注入器”
Angular 1.x 模块的.run 函数启动时。
这是我的 main.ts 文件:
import { upgradeAdapter } from './upgradeAdapter';
import { bootstrapNg1Components } from './app/ng1Components';
bootstrapNg1Components(upgradeAdapter);// this function downgarades my AngularNg2Service
upgradeAdapter.bootstrap(document.querySelector('html'), ['app.start']);
我已经阅读了一些类似的问题,但没有找到任何解决方案。
此外,我还有很多 Angular2 服务被降级。但问题仅在于注入到 .run 函数中使用的 Angular1 服务中的一个特定服务。
【问题讨论】:
标签: angularjs angular typescript upgrade downgrade