Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Web Component Compiler #16

Open
nolimits4web opened this issue Mar 28, 2018 · 1 comment
Open

Web Component Compiler #16

nolimits4web opened this issue Mar 28, 2018 · 1 comment
Assignees
Labels
Feature Request New feature or request High Priority

Comments

@nolimits4web
Copy link
Member

More information will appear here soon

@nolimits4web
Copy link
Member Author

nolimits4web commented May 5, 2018

So i began to work on it, here is the TODO check list of things need to be done (already done):

  • Shadow DOM. The question is should we use it or not. Enabling it makes component inner DOM inaccessible from parent and not visible for main document styles. So if go with shadow DOM then we need to implement API to package styles with component, means we also need it for Vue and React compiler

  • Virtual DOM

    • Virtual DOM (done with snabbdom)
    • Basic render/patch and autoupdate implementation
    • refs
    • slots
  • State management:

    • define state on component create
    • update state with this.setState method
    • Auto update/rerender on state change
    • Access state by this.state
  • Props

    • Props specification
    • Props validation
    • Auto update/rerender on props change
    • Access by this.props
  • Lifecycle hooks

    • componentWillCreate
    • componentDidCreate
    • componentWillUpdate
    • componentDidUpdate
    • componentWillMount
    • componentDidMount
    • componentWillUnmount
  • Watchers

    • Props watch
    • State watch
  • Helpers

    • dispatchEvent
    • parent
    • children
    • el

@nolimits4web nolimits4web self-assigned this May 5, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Feature Request New feature or request High Priority
Projects
None yet
Development

No branches or pull requests

1 participant