Skip to content
This repository has been archived by the owner on Jul 19, 2019. It is now read-only.

Remove dependency on react-dom #68

Open
fabslab opened this issue Oct 8, 2015 · 7 comments
Open

Remove dependency on react-dom #68

fabslab opened this issue Oct 8, 2015 · 7 comments

Comments

@fabslab
Copy link

fabslab commented Oct 8, 2015

With 0.14 React release the core React library is split from the DOM renderer in order to encourage projects like this to create their own rendering system. Are there plans to make a new renderer or will react-art continue to use react-dom? Will there be tutorials on the React site in the future on how authors can create their own renderer (what integration methods are required etc)?

@sebmarkbage
Copy link
Contributor

Yea, the idea is that eventually React ART will integrate its own renderer and eventually we'll have a publicly supported way of doing so. The big blocker is making it work seamlessly across renderers with context etc.

This is related too. facebook/react#4230

@sebmarkbage
Copy link
Contributor

Note that even <Surface /> doesn't need a dependency on react-dom since it can render the tag as a string and the ref resolves directly to the node.

@sophiebits
Copy link
Member

It already doesn't depend on react-dom:

react-art/package.json

Lines 20 to 26 in d98e74e

"dependencies": {
"art": "^0.10.0",
"fbjs": "^0.2.0"
},
"peerDependencies": {
"react": "^0.13.0 || ^0.14.0-a"
},

(That's not a practical help right now since there aren't any other DOM renderers.)

@fabslab
Copy link
Author

fabslab commented Oct 8, 2015

But react-art assumes the user is using ReactDOM doesn't it? As given in your example https://github.com/reactjs/react-art/blob/master/examples/vector-widget/app.js#L7

@sebmarkbage
Copy link
Contributor

@sophiebits
Copy link
Member

@sebmarkbage I think that's actually fine? That points to the composite.

@sebmarkbage
Copy link
Contributor

@spicyj Not if that composite was rendered by a different renderer than react-dom. Unless it also uses the same ReactInstanceMap. Note that this is the Surface so it shouldn't have been rendered by ReactART.

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants