add dev mode warning when teardown is returned instead of destroy

pull/1294/head
ekhaled 8 years ago
parent b8c0ab2949
commit 298a339df9

@ -516,6 +516,14 @@ export default class Element extends Node {
}); });
`); `);
if (generator.options.dev) {
block.builders.hydrate.addBlock(deindent`
if (${handlerName}.teardown) {
console.warn("Return 'destroy()' from custom event handlers. Returning 'teardown()' has been deprecated and will be unsupported in Svelte 2");
}
`);
}
block.builders.destroy.addLine(deindent` block.builders.destroy.addLine(deindent`
${handlerName}[${handlerName}.destroy ? 'destroy' : 'teardown'](); ${handlerName}[${handlerName}.destroy ? 'destroy' : 'teardown']();
`); `);

@ -0,0 +1,7 @@
export default {
dev: true,
warnings: [
`Return 'destroy()' from custom event handlers. Returning 'teardown()' has been deprecated and will be unsupported in Svelte 2`
]
};

@ -0,0 +1,16 @@
<button on:foo='foo()'>foo</button>
<script>
export default {
methods: {
foo() {}
},
events: {
foo(node, callback) {
return {
teardown() {}
}
}
}
};
</script>
Loading…
Cancel
Save