باستخدام EmberJS ، كيف يمكنني الحصول على نموذج باستخدام طريقة findProperty/find؟

كيف يمكنني العثور على النموذج المناسب حيث يساوي اسمها شيئًا ما؟ لقد حاولت: this.get ('content'). findProperty ('name'، name) ، ولكن يبدو أنه لا يعمل. أفترض أنه سيعمل إذا لم يتم حصر ما لا يحصى لدي بالكامل من الموديلات ...

0
نعم آسف. لا أعرف كيفية دعم EmberJS في JSFiddle ، لأنه لا يبدو في قائمة المكتبات المدعومة. ولكن شيئا من هذا القبيل: jsfiddle.net/fxQ28
وأضاف المؤلف Wildhoney, مصدر
يمكنك توفير المزيد من التعليمات البرمجية وإنشاء JSFiddle؟ كيف يبدو صفيف content الخاص بك؟
وأضاف المؤلف pangratz, مصدر
يمكنك استخدام jsfiddle.net/pangratz666/eTcDu كنقطة بداية.
وأضاف المؤلف pangratz, مصدر

1 إجابة

استخدم findProperty / find في مثيل Ember.ArrayController ، راجع http://jsfiddle.net/pangratz666/kPmHr/ :

App.peopleController = Ember.ArrayController.create({
    content: [
        App.Person.create({ name: 'Adam' }),
        App.Person.create({ name: 'John' }),
        App.Person.create({ name: 'Adam' })
    ],

    findByName: function(name) {
        var found = this.findProperty('name', name);
        console.log('found model %@'.fmt(found));
    }
});

App.peopleController.findByName('Adam');​
0
وأضاف
اوه شكرا لك! كنت أقوم بتحديث JSFiddle الخاص بي لدعم EmberJS: jsfiddle.net/eTcDu/3 لم أكن أن تكون كسولًا في عدم فعل ذلك :( لم أكن أعرف كيف. أنا آسف لأنك كتبت كل هذا الكود ، لكن شكراً لك! هذا مثالي.
وأضاف المؤلف Wildhoney, مصدر
على الاطلاق اي مشكلة على الاطلاق! هذا هو السؤال الأول الخاص بك على StackOverflow لذلك لا داعي للقلق :) فقط كملاحظة للأسئلة المستقبلية: إذا قمت بتوفير رمز ومثال يمكن تشغيله ، على سبيل المثال باستخدام JSFiddle ، فإن فرص الحصول على إجابة أعلى.
وأضاف المؤلف pangratz, مصدر