Javascript 如何使用AngularJS在ng init中传递范围变量

Javascript 如何使用AngularJS在ng init中传递范围变量,javascript,angularjs,Javascript,Angularjs,将声明的变量从作用域传递到ng init时出现问题: 到目前为止,我有这样的想法: $scope.x = '10'; <div ng-controller = "controller" ng-init="function(x)"> $scope.x='10'; 如何从ng init函数内的作用域传递x var?很多人会告诉您不应该这样做(如这里的文档所述:) 至于实际做这件事 <div ng-controller="controller" ng-init="x = x"&

将声明的变量从作用域传递到ng init时出现问题:

到目前为止,我有这样的想法:

$scope.x = '10';

<div ng-controller = "controller" ng-init="function(x)">
$scope.x='10';

如何从ng init函数内的作用域传递x var?

很多人会告诉您不应该这样做(如这里的文档所述:)

至于实际做这件事

<div ng-controller="controller" ng-init="x = x">

也许这个可以帮助您:

$scope.x = '10';

<div ng-controller = "controller" ng-init="x">
$scope.x='10';

如果要在有控制器的标记上执行函数,为什么不在控制器的构造函数中运行函数(即函数)

并非所有内容都必须在标记中

JS:

HTML:


如果您想在使用ng init时推送一个值,我会使用类似的方法

Js代码

angular.module("app",[])
.controller("ctrl",function($scope){
    $scope.x = "this will be replaced"; //not really needed
    $scope.initialize = function(bar){
        $scope.x=bar;
    }
})
和html

<div ng-app="app" ng-controller="ctrl" ng-init="initialize('your value')">

angular.module("app",[])
.controller("ctrl",function($scope){
    $scope.x = "this will be replaced"; //not really needed
    $scope.initialize = function(bar){
        $scope.x=bar;
    }
})
<div ng-app="app" ng-controller="ctrl" ng-init="initialize('your value')">