0

我刚刚开始我的第一个 Angular 项目,我正在使用 Angular UI 来传递 Jquery UI 可选。让模板中的一个元素仅更新当前选择的元素(例如,具有“ui.selected”类的元素)的最佳方法是什么?

4

1 回答 1

0

我已经通过使用指令解决了这个问题。

在 app.js...

mymodule.directive('hotlink', function () {

    return function (scope, element, attrs) {

        scope.$watch(attrs.hotlink, function (value) {
            if(element.parent().hasClass('ui-selected')){
                scope.obj[attrs.hotlink] = value;
                element.val(value);
            }
        });
    }
});

并在部分.html ...

<div class="row" ng-controller="workspaceCtrl">
<div class="editor four columns">
    <input type="text" placeholder="title" ng-model="title" />
    <textarea placeholder="description" ng-model="description"></textarea>
</div>
<div class="eight columns">
    <ul class="fileObjects" ui-jq="selectable" ui-options="selectOptions">
        <span ui-jq="sortable">
            <li class="item" ng-repeat="obj in fileObjects">
                <input type="text" val="{{obj.title}}" placeholder="title" hotlink="title"/>
                <textarea placeholder="description" hotlink="description">{{obj.description}}</textarea>
            </li>
        </span>
    </ul>

</div>
</div>

现在我有一个条件绑定,即元素只有在当前被选中时才从模型中获取更新。

于 2013-02-05T15:12:29.840 回答