Angularjs 在设置$routeProvider$angular.config时动态添加templateUrl

Angularjs 在设置$routeProvider$angular.config时动态添加templateUrl,angularjs,angularjs-routing,angularjs-provider,angularjs-rootscope,Angularjs,Angularjs Routing,Angularjs Provider,Angularjs Rootscope,我是角新手。我想实现以下代码 $routeProvider.when('/view', {templateUrl: 'ViewSwitcher?pageId='+$rootSope.pageId+'&userId='+$rootSope..userId+'&token='+$rootScope.token, controller: ''}); ViewSwitcher是一个servelet,它根据pageId、userId(保存在$rootScope中)…向我回复HTML页面

我是角新手。我想实现以下代码

 $routeProvider.when('/view', {templateUrl: 'ViewSwitcher?pageId='+$rootSope.pageId+'&userId='+$rootSope..userId+'&token='+$rootScope.token, controller: ''});

ViewSwitcher是一个servelet,它根据pageId、userId(保存在$rootScope中)…向我回复HTML页面…但是$rootScope不可用…提前感谢

您可以在这里做一件事,而不是将这些变量存储在
$rootScope
中,使用
provider
,这在配置阶段中很容易访问。创建一个
myData
提供商,在应用程序的不同组件之间共享数据

代码

//before using `myDataProvider` make sure it has been injected as dependency.
$routeProvider.when('/view', {
    templateUrl: 'ViewSwitcher?pageId='+myDataProvider.pageId+'&userId='+ myDataProvider.userId+'&token='+ myDataProvider.token,
    controller: 'myCtrl' //<--here it should be some controller
});
//在使用'myDataProvider'之前,请确保它已作为依赖项注入。
$routeProvider.when(“/view”{
templateUrl:'ViewSwitcher?pageId='+myDataProvider.pageId+'&userId='+myDataProvider.userId+'&token='+myDataProvider.token,

控制器:“myCtrl'/您可以在这里做一件事,而不是将此变量存储在
$rootScope
中。使用
提供程序
,它可以在配置阶段轻松访问。创建一个
myData
提供程序,在应用程序的不同组件之间共享数据

代码

//before using `myDataProvider` make sure it has been injected as dependency.
$routeProvider.when('/view', {
    templateUrl: 'ViewSwitcher?pageId='+myDataProvider.pageId+'&userId='+ myDataProvider.userId+'&token='+ myDataProvider.token,
    controller: 'myCtrl' //<--here it should be some controller
});
//在使用'myDataProvider'之前,请确保它已作为依赖项注入。
$routeProvider.when(“/view”{
templateUrl:'ViewSwitcher?pageId='+myDataProvider.pageId+'&userId='+myDataProvider.userId+'&token='+myDataProvider.token,

controller:'myCtrl'//感谢Pankaj的宝贵回复……我定义了如下提供程序:myApp.provider('configurableProvider',function(){var name='xyz';this.setName=function(newName){name=newName;};this.$get=function(){return name;};});并使用类似于myApp.config(['$routeProvider','configurableProvider',函数($routeProvider,configurableProvider){……..但是获取错误未知的提供程序(我认为是错误的注入)..@AKRICK您的提供商名称应该是可配置的。.在配置阶段使用它时,您需要使用
提供商
对其进行后期修复,就像它将用作
可配置提供商
&除配置阶段外,您可以通过Pankaj的
可配置
使用它:完成所有修复。正在运行,但仍在运行在url中定义……pharmApp.config(['$routeProvider','configurableProvider',function($routeProvider,configurable){您能用您尝试过的内容更新您的问题吗?我使用……App.config(['$routeProvider',function($routeProvider){$routeProvider.when('/view1',{templateUrl:function(configurable)实现{debugger;var obj=angular.element('*[ng app]').injector().get(“可配置”);return'ViewSwitcher?pageId='+obj.pageId+'&userId='+obj.userId+'&token='+obj.token;},controller:'});….谢谢!谢谢Pankaj给我宝贵的回复……我已经定义了这样的提供者:myApp.provider('configurableProvider',function(){var name='xyz';this.setName=function(newName){name=newName;};this.$get=function(){return name;};});并像myApp.config一样使用(['$routeProvider','configurableProvider',function($routeProvider,configurableProvider){……….但是获取错误未知提供程序(我认为是错误的注入)..@AKRICK您的提供商名称应该是可配置的。.在配置阶段使用它时,您需要使用
提供商
对其进行后期修复,就像它将用作
可配置提供商
&除配置阶段外,您可以通过Pankaj的
可配置
使用它:完成所有修复。正在运行,但仍在运行在url中定义……pharmApp.config(['$routeProvider','configurableProvider',function($routeProvider,configurable){您能用您尝试过的内容更新您的问题吗?我使用……App.config(['$routeProvider',function($routeProvider){$routeProvider.when('/view1',{templateUrl:function(configurable)实现{debugger;var obj=angular.element('*[ng app]').injector().get(“可配置”);return'ViewSwitcher?pageId='+obj.pageId+'&userId='+obj.userId+'&token='+obj.token;},控制器:'});….谢谢!