[Angularjs] إضافة فئة متعددة باستخدام فئة ng


Answers

نعم ، يمكن أن يكون لديك تعبير متعدد لإضافة فئة متعددة في فئة ng.

فمثلا:

<div ng-class="{class1:Result.length==2,class2:Result.length==3}"> Dummy Data </div>
Question

هل يمكننا الحصول على تعبير متعدد لإضافة العديد من ng-class؟

على سبيل المثال.

<div ng-class="{class1: expressionData1, class2: expressionData2}"></div>

إذا كانت الإجابة بنعم ، فبإمكان أي شخص تقديم المثال للقيام بذلك.

.







يعمل المثال الخاص بك للفصول الدراسية المشروطة (سيظهر اسم الفئة إذا كان expressionDataX صحيحًا):

<div ng-class="{class1: expressionData1, class2: expressionData2}"></div>

يمكنك أيضًا إضافة فئات متعددة ، يتم توفيرها بواسطة مستخدم العنصر:

<div ng-class="[class1, class2]"></div>

الاستعمال:

<div class="foo bar" class1="foo" class2="bar"></div>




أقل من active و activemenu هي class و itemCount و ShowCart هي قيم تعبير / boolean.

ng-class="{'active' : itemCount, 'activemenu' : showCart}"



باستخدام طريقة $scope في وحدة التحكم ، يمكنك حساب الفئات التي سيتم إخراجها في العرض. يكون هذا مفيدًا بشكل خاص إذا كان لديك منطقًا معقدًا لحساب أسماء الفئات ، وسيقلل من مقدار المنطق في العرض الخاص بك عن طريق نقله إلى وحدة التحكم:

app.controller('myController', function($scope) {

    $scope.className = function() {

        var className = 'initClass';

        if (condition1())
            className += ' class1';

        if (condition2())
            className += ' class2';

        return className;
    };
});

وفي العرض ، ببساطة:

<div ng-class="className()"></div>



Links