假设我有一个指令<a href="#" style="display:list-item"
dir1
这是模板URL
中指定的HTML模板myApp.directive('dir1', function () {
return {
restrict: 'E',
templateUrl: '/Templates/TestTmpl.html',
scope: {
selectedName: '=?',
getSelectedName : '&?'
},
controller: function ($scope) {
$scope.bindSelectedName = function (name) {
$scope.selectedName = name;
$scope.getSelectedName();
}
}
}
})
我想将所选名称绑定到控制器,这就是控制器的样子
<div ng-init="names=[
{name:'Jani',country:'Norway'},
{name:'Hege',country:'Sweden'},
{name:'Kai',country:'Denmark'}]">
<a href="#" class="list-group-item"
ng-click="bindSelectedName(name)"
ng-repeat="name in names">
{{name.name}}
</a>
</div>
这是我使用
的HTMLmyApp.controller('ctrl1', function ($scope) {
$scope.getSelectedName = function (name) {
console.log(name);
}
})
现在的问题是当我检查控制器<div ng-controller="ctrl1">
<dir1 data-selected-name="name" data-get-selected-name=getSelectedName(name)></dir1>
</div>
中console.log(name);
的值时,它与ctrl1
中$scope.selectedName
的值不同
我的问题是上面的代码出了什么问题?我该怎么做才能解决这个问题?