Comments (7)
PR #50 Was not able to use event.preventDefault ()
API as we would have to monkey patch. Introduced a "sugar" method event.prevent ()
which will be available to all declared on*
events
(i.e. static onclick (event) {}
)
Conversely we also introduced the return false
convention for those familiar with jQuery.
Element `foo-bar`
(class extends HTMLElement {
static onclick (event) {
event.prevent () // pre-operation disable of rendering
alert `I was clicked ${event.target}` // operation
// this.render () // always have option to explicitly render
return false // post-operation disable of rendering
// render will immediately fire after handler if event was not prevented
}
})
@janz93 @Robertchristopher @brandondees @btakita @mrbernnz @scottmacdowell
from snuggsi.
is this to reproduce preventDefault()'s behavior or to prevent snuggsi from rendering? if the latter, i think prevent()
is not self-descriptive as it could be
from snuggsi.
latter @brandondees. API suggestion? To be honest i'm good with return false
however really wanted to have event.preventDefault ()
and i agree is confusing unless it actually Prevents the Default.
I think what i realized from your statement is prevent ()
is fine if it actually calls preventDefault
AND prevents this.render
which is a "default behavior" that is prevented. (as per the spec).
Please advise.
b997192#commitcomment-22458637
from snuggsi.
is this to reproduce preventDefault()'s behavior or to prevent snuggsi from rendering? if the latter, i think prevent() is not self-descriptive as it could be
Actually @brandondees on second thought not an OR situation but an AND situation.
from snuggsi.
nah i think the prevent()
name is confusing UNLESS it's just a contextual wrapper for e.preventDefault()
since that's the only other thing it sounds like.
if its purpose is to prevent default AND prevent render, then maybe we start by calling it preventDefaultHooks()
or something a little more descriptive like that. if it's only render() then preventRender()
i'm not sure i've grasped yet where the return false
factors in or what it means
from snuggsi.
@brandondees some (ancient) insight as to the conventions. https://stackoverflow.com/questions/1357118/event-preventdefault-vs-return-false
http://www.mail-archive.com/[email protected]/msg71371.html
from snuggsi.
Note that this behaviour differs from normal (non-jQuery) event handlers, in which, notably, return false does not stop the event from bubbling up.
ah ok so there's a scope traversal thing going on also independent of preventDefault()
from snuggsi.
Related Issues (20)
- Polyfill support for IE11+ HOT 4
- Update Documentation for `context`, `initialize`, `onconnect`, & `onidle`
- nested templates HOT 5
- devDependencies SECURITY ALERT
- browser-sync -> localtunnel -> axios vulnerability
- Sponsorship button
- `<template>.content` May not be working in I.E. 11 after `DomContentLoaded`
- Remove Web Components Section from Readme.md
- Declarative properties
- Range node error when parsing Template tokens. HOT 6
- Incommunicado? HOT 6
- Slack link not working HOT 1
- What is the reason for the limited npm/node engines? HOT 3
- Browser Sync vulnerability ... (again) HOT 6
- Basic example: Getting "TypeError: Illegal constructor" HOT 7
- Is it possible to tweak to be able to run on Android 4.4 KitKat? HOT 1
- "Failed to execute 'selectNodeContents'" on 'Range': parameter 1 is not of type 'Node' HOT 2
- Server side rendering HOT 3
- Readme Template Example Fails to Run
- Improvement: NPM Support & Named Imports
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from snuggsi.