将JavaScript变量传递给AngualrJs ng-init

Rav*_*Ram 5 javascript angularjs

我定义了以下javascript变量,需要将memId值传递给AngularJs init函数.

<script type="text/javascript">
    var memId = "bb7de28f-0f89-4f14-8575-d494203acec7";
</script>   

<div id="content-header" class="mini" ng-init="getMember(memId)">
Run Code Online (Sandbox Code Playgroud)

我收到一个错误:memId没有定义.

控制台显示ng-init内的memId值未传入.

如何将javascript变量传入ng-init?

qwe*_*ynl 10

您需要使用$window以下"角度"方式执行此操作:

var app = angular.module('myapp', []);

app.controller('MainCtrl', ['$scope', '$window', function($scope, $window) {
  $scope.memId = $window.memId;
}]);
Run Code Online (Sandbox Code Playgroud)

演示:http://codepen.io/qwertynl/pen/jqIrK

  • 你真的是94岁吗? (2认同)

Sat*_*pal 5

目前你的变量被绑定到 window 对象。您可以使用 Angular $window访问全局窗口对象

// Your Global Variable defined outside angular
var memId = "bb7de28f-0f89-4f14-8575-d494203acec7";

//Define Module
var app = angular.module('myapp', []);

//Define Controller
app.controller('MyCtrl', ['$scope', '$window',
    function($scope, $window) {
        $scope.memId = $window.memId;
    }
]);
Run Code Online (Sandbox Code Playgroud)

  • `+1` oooo 我输入答案的速度太慢了 :-( (3认同)