我在 app/form/signIn.js 中有用于登录的表单
Ext.define('app.form.signIn', {
extend: 'Ext.form.FieldSet',
requires: [
'Ext.field.Password'
],
config: {
...
}
});
查看需要并使用此表单。
Ext.define('app.view.Main', {
extend: 'Ext.navigation.View',
alias: 'widget.View',
requires: [
'Ext.tab.Panel',
'Ext.TitleBar',
'app.form.signIn',
'app.form.signUp'
],
config: {
'id':'viewMain',
items: [
Ext.create('app.form.signIn')
....
]
}
});
表单在 View 的requires部分中定义。但我仍然在浏览器消息中看到
[WARN][Anonymous] [Ext.Loader] Synchronously loading 'app.form.signIn'; consider adding 'app.form.signIn' explicitly as a require of the corresponding class
- 我应该如何定义自动加载的要求?
- 表单上的按钮在开发模式下按预期工作。但在构建之后 - Controller 中没有用于此表单上按钮的处理程序。可能是“require”错误导致的?
非常感谢您的解答。
最佳答案
因为你从来没有给它机会处理requires block 。您本质上是需要它,然后强制它在同一个 block 中同步加载。
使用配置:
Ext.define('app.form.signIn', {
extend: 'Ext.form.FieldSet',
xtype: 'signinform'
});
// Define it
items: [{
xtype: 'signinform'
}]
关于javascript - Sencha Touch - "requires"中的组件未加载,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21571698/