如何将参数从nodejs传递给angularjs控制器?

时间:2018-04-23 08:11:32

标签: angularjs node.js

我在nodejs中有这个

res.render('pages/dist/reset', {token:req.params.token});

我可以在reset.mustache

中阅读
<body  ng-app="eyeApp" ng-controller="ResetController">  
        <div id="wrapper">
            <div id="layout-static">
                <div class="static-content-wrapper">
                    <div class="static-content">                                                                                  

                        <div id="wrap" ui-view class="mainview-animation animated"></div>

                         <!--wrap -->     
                    </div>
                    <footer role="contentinfo" ng-show="!layoutLoading" ng-cloak>   
                        <div class="clearfix">

                            <button class="pull-right btn btn-default toUp btn-sm hidden-print" back-to-top style="padding: 1px 10px;"><i class="fa fa-angle-up"></i></button>
                        </div>   
                    </footer>
                </div>
            </div>
        </div>
     {{token}}

    </body>

此文件中的控制器是ResetController。

ResetController:

 angular
      .module('telcoserv.eye.reset', [
        'telcoserv.core.services'      
      ])
      .controller('ResetController', ['$scope', '$theme','$http','$state','$window','$stateParams', function($scope,$theme,$http,$state,$window,$stateParams) {
        'use strict';          

        $scope.submit = function(){             
            alert('123');                  
            alert($scope.token);
    }

      }]);

alert($ scope.token)未定义。 当我在reset.mustache中说{{token}}时,我可以读取值但$ scope.token我无法在resetController中读取。为什么?

2 个答案:

答案 0 :(得分:2)

$scope.submit = function(){             
    alert('123');                  
    alert($scope.token);

    $http({
        method:'',
        data: {json : data}
        url: ''
    }).then(function(response) {
        //Success response
    }, function(error) {
        //Failed response
    });
}

使用$http来呼叫你的api。在method中,您可以根据您的api放置GET, POST, PUT, DELETE, OPTIONS

放置URL

将您的请求正文放在data中作为JSON,仅适用于PUT,POST,DELETE。

答案 1 :(得分:0)

如果您不想初始化某些方法来实现此目的并将其作为参数 1.创建一个常量服务来获取令牌并将其作为参数注入控制器。您可以参考本文如何创建常量服务 https://lostechies.com/gabrielschenker/2014/01/14/angularjspart-9-values-and-constants/

2.在应用程序的路径定义中,使用此控制器在页面路径中使用resolve,并使用相同的参数并将其作为依赖项注入控制器。