AngularJS - 将一些标志从html传递到控制器

AngularJS - Pass some flag from html to controller

本文关键字:html 控制器 标志 AngularJS      更新时间:2023-09-26

我是Angular JS的新手。我卡住了,找不到解决方案。

问题 - 我有一个 html 代码,如下所示:

<div ng-controller="myController" ng-model={{tt="a"}}>
</div>
<div ng-controller="myController" ng-model={{tt="b"}}>
</div>
<div ng-controller="myController" ng-model={{tt="c"}}>
</div>

控制器代码为:

myApp.controller('myController', function($scope) {
    if($scope.tt == "a") //do something
    else if($scope.tt == "b) //do something else
})

注意 - html ng-model,我只是写信让你知道我真正想要什么。

问题 - 我想从我的 html 向控制器发送一些东西,以便我可以检查值并有条件地执行。

这可能不是最佳实践,但如果您想将数据从 html 引入角度,您可以将数据作为 window 的属性存储在 <script> 标记中。

var app = angular.module('myApp',[]);
app.controller('mainCtrl', function($scope){
  $scope.tt = window.data;
})
<div ng-app='myApp'>
  <div ng-controller='mainCtrl'>
    {{tt}}
  </div>
</div>

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.22/angular.min.js"></script>
<script>
  window.data='abcd';
</script>