gpt4 book ai didi

javascript - 在 Sencha Touch 2 中创建 xtype?

转载 作者:搜寻专家 更新时间:2023-10-31 22:33:34 25 4
gpt4 key购买 nike

当跟随 Senchacon 2011 的 Sencha Touch 2 MVC 深度第 1 部分 session 时,我再次遇到同样的错误:

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

通常在 extjs4 中,我会使用 alias : widget.homepage 并且它工作正常。但是,在遵循 Ed Spencer 关于 Sencha Touch 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'
}
]
});
}
});

查看(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');
}
});

最佳答案

看起来他们改变了 View 定义的位置 - 它在 app.js 而不是 Controller main.js 中。

因此,如果您将 views: ['Home'],main.js 剪切并粘贴到 app.js 中,就在 controllers: 定义,您的示例应该可以工作。

从长远来看,我认为这是一件好事 - 基本上,您现在可以在一个地方定义 View 、 Controller 、模型等。但令人遗憾的是,通过进行此更改,任何尝试使用最新最好版本的 Sencha 2 观看此视频的人都会遇到此问题。

编辑:发现另一个问题。当您到达向 Controller 中的联系表单添加引用的部分时,其语法也发生了变化 - 它进入了配置。将此添加到 Controller 对我有用:

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

关于javascript - 在 Sencha Touch 2 中创建 xtype?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9553963/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com