Ember.js: Pertimbangkan untuk membuat `currentModel` di `Ember.Route` menjadi publik

Dibuat pada 15 Jul 2015  ·  4Komentar  ·  Sumber: emberjs/ember.js

API pribadi ini adalah salah satu yang sering saya gunakan dalam aplikasi saya untuk secara terprogram mendapatkan model rute saat ini. Ini sebagian besar kenyamanan untuk this.modelFor(this.routeName) . Ini sangat berguna untuk menulis kode rute yang dapat digunakan kembali yang perlu mendapatkan model rute saat ini.

Meskipun routeName bersifat pribadi, lihat #11759

Komentar yang paling membantu

Kedengarannya bagus, saya kemudian akan membuat alias di ApplicationRoute yang hanya currentModel: function () { return this.modelFor(this.routeName); } karena itu sangat berguna dan sayang sekali diabaikan. Tapi kita akan melanjutkan!

Semua 4 komentar

:+1: sangat berguna - ketika saya melihat di rute this.modelFor('a.route.name') Saya selalu harus memeriksa ulang untuk melihat apakah itu nama rute saat ini atau bukan. Ini akan menghilangkan sumber kebingungan itu, terutama tampaknya praktik terbaik adalah memiliki tindakan penanganan rute dengan memanipulasi modelnya sendiri, dan (idealnya) bukan model rute lain.

Membahas hal ini pada rapat tim inti sore ini, dan memutuskan bahwa kami ingin merahasiakannya. Seperti yang Anda sebutkan this.modelFor(this.routeName) (Saya baru saja menimpali #11759 bahwa kita harus membuat this.routeName publik) adalah cara yang baik untuk melakukan ini dengan API publik. Anda juga dapat menggunakan this.get('controller.model') . Kedua saran ini harus menghilangkan ambiguitas dengan this.modelFor('a.b.c') yang disebutkan @davidgoli ..

Terima kasih telah membuka masalah untuk diskusi, saya akan menutup sekarang setelah kita berdiskusi dan memutuskan untuk merahasiakannya.

Kedengarannya bagus, saya kemudian akan membuat alias di ApplicationRoute yang hanya currentModel: function () { return this.modelFor(this.routeName); } karena itu sangat berguna dan sayang sekali diabaikan. Tapi kita akan melanjutkan!

Apakah halaman ini membantu?
0 / 5 - 0 peringkat