Đấu tranh để tìm ra cách tốt nhất để xem các thay đổi thuộc tính, trong đó sẽ lý tưởng cập nhật dựa trên một sự kiện phím nhấn, ràng buộc với phạm vi trong bộ điều khiển cha mẹgóc Tuỳ chỉnh thay đổi chỉ thị giá trị thuộc tính
Tôi muốn mỗi 'dụ 'của chỉ thị có thuộc tính' hasFocus 'của riêng nó được thay đổi bằng cách cập nhật giá trị thuộc tính ví dụ
<menu has-focus="{{ true }}" ></menu>
<menu has-focus="{{ false }}" ></menu>
<menu has-focus="{{ false }}" ></menu>
mẫu:
<div class="menu">
<ul>
<li ng-repeat="option in menu.options" ng-class="{ 'focused' : hasFocus }" tabindex="{{ $index }}">
<div class="icon">{{ $index+1 }}</div>
</li>
</ul>
và do đó chỉ có 1 chỉ có thể có giá trị tương đương với 'true' cùng một lúc.
Tôi có một chỉ thị tùy chỉnh
.directive('menu', function()
{
restrict : 'E',
templateUrl : 'partials/menu-left.html',
replace : true,
scope : {
hasFocus : '@'
},
link : function($scope, element, attrs)
{
attrs.$observe('hasFocus', function(value) {
console.log(value);
});
}
})
nhưng không thể dường như để trích xuất các giá trị từ $ tuân thủ phương pháp cố gắng sử dụng $ đồng hồ nhưng vẫn didnt làm việc không chắc chắn những gì tôi đang làm sai!
bạn đang sử dụng 'hasFocus: @' mà mất sự thật/giá trị sai dưới dạng chuỗi. Bạn cần lấy chúng làm đối tượng sử dụng 'hasFocus:" = "' và 'has-focus =" true "' trên HTML –
Cảm ơn Omri - Thats tuyệt vời - đã làm việc một cách hoàn hảo, có nhầm lẫn với các tùy chọn phạm vi cô lập! – SteveP124