sınıflara Ben Sencha'sı Mimarı kullanarak oluşturduğunuz bir model alt sınıfı istiyorum. Daha önce oluşturduğum BaseModel adlı bir modelim olduğunu varsayalım ve başka bir model oluşturmam gerekiyor, bunu BaseModel'i genişleten MyModel olarak adlandırıyorum. ExtJS ve Sencha Mimar içinSencha Mimar: bir model
// BaseModel.js
Ext.define('MyApp.model.BaseModel', {
extend: 'Ext.data.Model',
fields: [...]
});
ve
// MyModel.js
Ext.define('MyApp.model.MyModel', {
extend: 'MyApp.model.BaseModel',
fields: [...]
});
Ben yeni ama bu kodda yapmak ve uygun için çok önemli çok basit bir şeydir: kodunda, şöyle bir şey olmazdı Orada hayal ettiğim yazılım tasarımı bunu Mimar'da yapmanın bir yolu olmalı. Ne yazık ki bunu nasıl yapacağımı anlayamadım. bazen
burada açıklanan özellikler Toolbox desteklenen öğelerden sınıfların oluşturulmasını sağlayacak ederken: Bazı kazma sonra, Sencha'sı docs başlığı "Özel Dersler" altında aşağıdaki durumları http://docs.sencha.com/architect/2/#!/guide/classes, buldum Araç kutusunda görünmeyen başka bir sınıfı genişleten sade bir ebeveyn sınıfı veya bir sınıf oluşturmanız gerekebilir. Bunu, Araç Kutusu'ndaki Sınıf öğesini kullanarak Mimar'da yapabilirsiniz. Tamam
, umut verici sesler - bu yüzden bunu denedik. Proje müfettişinde artı işaretine bastım, "Sınıf" a ve "Model" isabetine girdim. Şimdi benim projemde özel bir Model sınıfına sahibim. Ben MyModel
diyorum ve MyApp.model.BaseModel
olmak için "genişlet" yapılandırmasını ayarlayın. Şimdi en azından kod doğru ve yukarıda sahip olduğum gibi görünüyor. Ancak, Mimar, Proje Müfettişimin "Model" bölümünde yer almasına ve BaseModel
'u genişletmesine rağmen MyModel
sınıfının bir model olduğu konusunda hiçbir fikre sahip değildir. Belirttiğim "alanlar" gibi Model yapılandırma özelliklerinden hiçbiri yoktur ve MyModel
'u herhangi bir Mağaza ile ilişkilendiremiyorum. Başka bir deyişle, Mimar MyModel
'u tamamen özel bir sınıf olarak ele alır ve herhangi bir Model davranışını ortaya çıkarmaz. Bu temelde tamamen alt sınıflandırma yöntemini tamamen işe yaramaz hale getirir - Bir Model alt sınıfını oluşturabilirim ama sonra projemin herhangi bir yerinde bir model olarak kullanamıyorum, bu yüzden ne anlamı var?
Yani soru Ben Mimar gerçek model olarak MyModel
tedavi etmek alabilirim nasıl? Bu, Mimar'da alt sınıfın doğru yolu değil mi? Ben sadece projeme başlıyorum ama modellerin, kontrolörlerin, mağazaların, vb. Çok sık alt sınıflara ihtiyaç duyduğumu öngörüyorum ve eğer bunu mimar ile yapamazsam ciddi bir sınırlama.
nasıl çözülür ?? –