我使用以下升级/降级桥https://angular.io/docs/ts/latest/guide/upgrade.html在一个应用程序中并排放置Angular1和Angular2 。
我的问题是是否有可能从Angular2服务访问Angular1 。 需要明确的是,我不是在问Angular2中的等价物是什么。$rootScope
$rootScope
我使用以下升级/降级桥https://angular.io/docs/ts/latest/guide/upgrade.html在一个应用程序中并排放置Angular1和Angular2 。
我的问题是是否有可能从Angular2服务访问Angular1 。 需要明确的是,我不是在问Angular2中的等价物是什么。$rootScope
$rootScope
所需要的只是:
@Injectable()
class ExampleAngular2Service {
constructor(@Inject('$rootScope') private _rootScope: IRootScopeService) {}
}
您不必升级任何东西,默认情况下它就在那里。见http://www.spaprogrammer.com/2017/03/inject-rootscope-into-angular-2.html
使用现在推荐的在 Angular 6 Hybrid 上进行测试:
import { UpgradeModule } from '@angular/upgrade/static';
你也可以这样做$scope
@Inject('$scope') private $scope: IScope
所以我会回答我自己的问题。
$rootScope
您必须通过以下方式升级:
upgradeAdapter.upgradeNg1Provider('$rootScope')
然后可以将其注入到 Angular2 服务中,如下所示:
@Injectable()
class ExampleAngular2Service {
constructor(@Inject('$rootScope') private _rootScope: any) {}
}