我正在为此苦苦挣扎。评级是来自 Angular Bootstrap 的指令,我无法控制它,我可以定义一个控制器,并且我正在尝试通过它序列化评级,但是我似乎无法访问父文章。我是 AngularJS 的新手,所以这可能是最愚蠢的问题,但我正在试验$scope.$parent
,它确实让我可以访问一个article
属性,但是当我这样做时$scope.$parent.article
它返回未定义,必须有另一种方法。
这是有问题的标记:
<div class="article full" data-ng-model="article">
<header class="page-header">
<h4>{{article.title}}</h4>
<div class="article-rating" rating ng-controller="RatingsCtrl" value="article.rating" max="5"></div>
</header>
<!-- ... -->
</div>
这是有问题的指令https://github.com/angular-ui/bootstrap/blob/master/src/rating/rating.js,这是我尝试让某些东西起作用的尝试,不会增加太多上下文,但根据要求:
angular.module("myApp")
.controller("RatingsCtrl", ($scope) ->
console.log $scope.$parent.article #=> undefined
$scope.$watch 'value', (newVal, oldVal) ->
console.log "newVal = #{newVal} oldVal=#{oldVal}"
console.log $scope.$parent.article #=> undefined
)