// Use an extension to add a custom icon during initialization.
Blockly.Extensions.register("addMyIcon",function(){this.addIcon(newMyIcon(this));})
Blockly.common.defineBlocksWithJsonArray([{type:"my_block",// ...extensions:["addMyIcon"],},])
// Add a custom icon during initialization.
Blockly.Blocks['my_block']={init:function(){//...this.addIcon(newMyIcon(this));},}