加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Angularjs用控制器解析为字符串

发布时间:2020-12-17 08:17:04 所属栏目:安全 来源:网络整理
导读:写入角度控制器的风格是这样的(使用控制器名称而不是功能) angular.module('mymodule',[]) .controller('myController',[ '$scope',function($scope) { // Some code here } ]); 我现在需要的是提供i路由我想定义解析部分: $routeProvider.when('/someroute
写入角度控制器的风格是这样的(使用控制器名称而不是功能)
angular.module('mymodule',[
])
    .controller('myController',[
        '$scope',function($scope) {
            // Some code here

        }
    ]);

我现在需要的是提供i路由我想定义解析部分:

$routeProvider.when('/someroute',{
        templateUrl: 'partials/someroute.html',resolve: myController.resolve}) // THIS IS THE CRITICAL LINE

由于控制器被定义为如何完成解析部分的名称?

要澄清更多的细节,我想在路由解析之前从服务器加载一些数据,然后在控制器中使用这些数据。

更新:要更准确地说,我希望每个模块都有其“解析”功能,将在root执行之前调用该控制器。 this post中的解决方案(由Misko Hevery回答)完全是我想要的,但是我没有控制器作为功能,而是一个名字。

控制器定义和解析部分将在路由定义上单独指定。

如果您在模块级别定义控制器,则需要将其引用为字符串,因此:

$routeProvider.when('/someroute',controller: 'myController',resolve: {
          myVar: function(){
            //code to be executed before route change goes here
          };
        });

上面的代码还显示了如何定义一组将在路由更改之前解决的变量。当解决这些变量可以注入控制器时,从上面的代码片段中获取示例,您将如下编写控制器:

.controller('myController',['$scope','myVar',function($scope,myVar) {
            // myVar is already resolved and injected here
        }
    ]);

这个视频也可以帮助:http://www.youtube.com/watch?v=P6KITGRQujQ

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读