Subclasse Fabric.js fabric.Group - Erro: “Não é possível ler a propriedade 'assíncrona' de indefinida” ao carregar do JSON
Tenha o seguinte problema:
Tentando subclass fabric.Group:
var CustomGroup = fabric.util.createClass(fabric.Group, {
type : 'customGroup',
initialize : function(objects, options) {
options || ( options = { });
this.callSuper('initialize', objects, options);
this.set('customAttribute', options.customAttribute || 'undefinedCustomAttribute');
},
toObject : function() {
return fabric.util.object.extend(this.callSuper('toObject'), {
customAttribute : this.get('customAttribute')
});
},
_render : function(ctx) {
this.callSuper('_render', ctx);
}
});
Caso de teste:
Criei um retângulo vermelho e o adicionei ao grupo personalizado:
function drawTestRect() {
// create a rectangle object
var rect = new fabric.Rect({
left : 100,
top : 100,
fill : 'red',
width : 20,
height : 20
});
var cgroup = new CustomGroup([rect], {
top : 50,
left : 50,
customAttribute : 'Hello World'
});
canvas.add(cgroup);
};
Problema: Quero obter o JSON da tela e depois quero carregar a tela do JSON.
drawTestRect ()
var saveCanvas = canvas.toJSON ();
canvas.clear ();
canvas.loadFromJSON (savedCanvas);
Tudo está funcionando bem (Rect / Group é desenhado; JSON é válido), mas quando carrego do JSON, recebo o seguinte erro no console:
TypeError: Não é possível ler a propriedade 'async' de undefined
O que eu tentei ainda:
Eu adicionei "CustomGroup.async = false;". Mas não ajudou