الزاوي.شبيبة حدد مع نغوبتيونس:تسمية أوبتغروب

StackOverflow https://stackoverflow.com//questions/23036155

  •  21-12-2019
  •  | 
  •  

سؤال

لقد بدأت للتو للعب مع الزاوي.جس ولديك سؤال حول نغوبتيونس:هل من الممكن تسمية أوبتغروب?

دعونا نفترض 2 الكائنات-السيارات والمرائب.

cars = [
    {"id": 1, "name": "Diablo", "color": "red", "garageId": 1},
    {"id": 2, "name": "Countach", "color": "white", "garageId": 1},
    {"id": 3, "name": "Clio", "color": "silver", "garageId": 2},
    ...
]
garages = [
    {"id": 1, "name": "Super Garage Deluxe"},
    {"id": 2, "name": "Toms Eastside"},
    ...
]

مع هذا الرمز حصلت على ما يقرب من النتيجة أريد:

ng-options = "car.id as car.name + ' (' + car.color + ')' group by car.garageId for car in cars"

النتيجة في تحديد:

-----------------
1
 Diablo (red)
 Countach (white)
 Firebird (red)
2
 Clio (silver)
 Golf (black)
3
 Hummer (silver)
-----------------

ولكن أريد أن تسمية أوبتجروب مثل "المرآب 1"," المرآب 2",...أو حتى أفضل عرض اسم المرآب وليس فقط كاراجيد.

ال angularjs.org وثائق لتحديد لا يقول شيئا عن تسميات أوبتغروب ، ولكن أود أن تمديد المجموعة من قبل جزء من نغوبتيونس مثل group by car.garageId as 'Garage ' + car.garageId أو group by car.garageId as getGarageName(car.garageId) - الذي للأسف لا يعمل.

بلدي الحل الوحيد حتى الآن هو إضافة خاصية جديدة "كاراج ديسبلاينام" إلى كائنات السيارة وتخزين هناك معرف + اسم المرآب واستخدام ذلك كمجموعة حسب المعلمة.لكنني لا أريد تحديث جميع السيارات كلما تم تغيير اسم المرآب.

هل هناك طريقة لتسمية أوبتجروبس مع نغوبتيونس, أو يجب أن أستخدم نغريبيت في هذه الحالة?

هل كانت مفيدة؟

المحلول

يمكنك فقط الاتصال getGarageName() في ال group by دون استخدام as...

ng-options="car.id as car.name + ' (' + car.color + ')' group by getGarageName(car.garageId) for car in cars"

بدلا من تخزين معرف المرآب في كل سيارة ، قد ترغب في النظر في تخزين إشارة إلى كائن المرآب في صفيف المرائب.بهذه الطريقة يمكنك تغيير اسم المرآب وليس هناك حاجة لتغيير كل سيارة.و ال group by يصبح ببساطة...

group by car.garage.name

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top