2012-03-04 4 views
3

При следующем Сенча Touch 2 MVC в глубинной части 1 сессии с Senchacon 2011 я получаю ту же ошибку снова и снова:Создание xtype в Sencha Touch 2?

Uncaught Error: [Ext.createByAlias] Cannot create an instance of 
unrecognized alias: widget.homepage 

Normaly в extjs4 Я хотел бы использовать псевдоним: widget.homepage и он работал отлично. Но, когда folowing учебник Эд Спенсера на Сенча сенсорный MVC приложение, которое я получаю ту же ошибку:

APP.JS

Ext.Loader.setConfig({ 
    enabled:true 
}); 

Ext.application({ 
    name: 'Sencha', 

    controllers: ['Main'], 

    launch: function() { 
     Ext.create("Ext.tab.Panel", { 
      fullscreen: true, 
      tabBarPosition: 'bottom', 
      items: [ 
       { 
        xtype: 'homepage' 
       } 
      ] 
     }); 
    } 
}); 

View (HOME.JS)

Ext.define('Sencha.view.Home', { 
    extend: 'Ext.Panel', 
    xtype: 'homepage', 
    config: { 
     title: 'Home', 
     iconCls: 'home', 
     cls: 'home', 
     html: [ 
      '<img src="http://staging.sencha.com/img/sencha.png" />', 
      '<h1>Welcome to Sencha Touch</h1>', 
      "<p>You're creating the Getting Started app. This demonstrates how ", 
      "to use tabs, lists and forms to create a simple app</p>", 
      '<h2>Sencha Touch (2.0.0)</h2>' 
     ].join(""); 
    } 
}); 

Controller (MAIN.JS)

Ext.define('Sencha.controller.Main', { 
    extend: 'Ext.app.Controller', 
    views: ['Home'], 
    init: function() { 
     console.log('inited'); 
    } 
}); 
+0

У меня была такая же ошибка «Неиспользуемая ошибка: [Ext.createByAlias] Не удалось создать экземпляр нераспознанного псевдонима: widget.somename', но я исправлен, объявив внутренние представления перед основным видовым окном в ext.application, например:' views : ['someViewWithXtype', 'anotherViewWithXtype', 'myViewport'], ' – RaphaelDDL

ответ

7

Похоже, они изменили где определение ваших взглядов идет - он идет в app.js вместо контроллер, main.js.

Так что, если вы вырезать и вставить views: ['Home'], из main.js в app.js прямо над controllers: определения, ваш пример должен работать.

Это хорошо, на мой взгляд, в долгосрочной перспективе - в основном вы определяете свои взгляды, контроллеры, модели и т. Д. Все в одном месте. Но стыдно, что, сделав это изменение, любой, кто пытается следовать вместе с этим видео с последней и самой большой версией Sencha 2, столкнутся с этой проблемой.

EDIT: нашел еще одну проблему. Когда вы дойдете до той части, где вы добавили ссылку на контактную форму в контроллере, синтаксис для нее также изменился - он переходит в конфигурацию. Добавление этого к контроллеру работало для меня:

config: { 
    refs: { 
     contactForm: { 
      selector: '#contactForm' 
     } 
    } 
}, 
+0

yes Я видел это на форуме Sencha ... Угадайте, что у парней в Sencha есть много на уме в данный момент ... ;-) Спасибо .. , –

0

В случае кто-то с той же проблемой, я определял конфигурацию свойство Fullscreen (верблюжий) вместо полноэкранного режима (с небольшим случаем).

После того как я решил, что проблема решена.

Смежные вопросы