如何创建带有 Ext.draw.engine.Canvas 作为项目的 Ext js 小部件?

How to create Ext js widget with Ext.draw.engine.Canvas as an item?

我想使用 Ext js 创建小部件,其中一项应该是 canvas。

当我尝试将项目添加为 xtype: 'canvas', 时出现以下错误。

Ext.Loader is not enabled, so dependencies cannot be resolved dynamically.
Missing required class: tree {stack: (...), 
message: "Ext.Loader is not enabled, 
so dependencies cannot …esolved dynamically. 
Missing required class: tree", 
isInstance: true, $className: "Ext.Base", configClass: function…}

以下是我的代码片段:

Ext.widget({
        xtype   : 'mz-form-widget',
        itemId: 'shopableImage',
        items: [
            {
                xtype: 'canvas',
                width: 750,
                height: 470,
                itemId: 'preview-container'
            }
        ],

如何将 canvas 项添加到我的窗口小部件面板中? 我在这里缺少什么?

Canvas 没有定义别名 (xtype),因此您不能像上面那样内联配置它。您可以使用 Ext.create 显式创建它,也可以转到上层组件,例如 SurfaceExt.draw.Container.