Comments (12)
👍
from material-ui.
👍
from material-ui.
+1
from material-ui.
Yes, I think we'd definitely like to go in this direction. We'll work this into the next release or 2.
from material-ui.
H
from material-ui.
Maybe you could keep both. For menus and navigation, where the structure is well known, I think it makes sense to make it more of a configuration. If I want to quickly implement a menu I don't want to import/remember all of the sub menu components.
Wouldn't a simple if statement allow for overrides, though. Something like:
if (this.props.children) {
return this.props.children;
} else {
// Build it using the config
}
from material-ui.
@kylefinley are you looking to have the config so you don't have to recreate the same jsx over and over again? If so, how are you doing this with the config? Can you just replace that with JSX dom structures?
from material-ui.
Yes, I see your point.
I'm new to React, so perhaps my suggestion is not idiomatic. But the thing I like about the current implementation, and React for that matter, is that it feels more like JavaScript than HTML. Instead of using JSX, or even nested React functions; Material-UI simply uses JavaScript data structure (Objects and Arrays) to define the structure, E.g. Menus
At the end of the day it's just personal preference. I just though that the use of Objects
and Arrays
to define the structure was novel. Obviously it only works if you are able to optimize for the 95% usecase and allow overriding with JSX dom for the remaining 5%.
from material-ui.
@kylefinley I feel you. One of the things that using react also does though is let your templates and your js merge so that your typical html/css devs work on end product and not just mocks.
from material-ui.
Has there be any updates in this regard? I'm very interested in this.
from material-ui.
+1
from material-ui.
#1319
I made this that does exactly what you are expecting!
from material-ui.
Related Issues (20)
- [material-ui][Autocomplete] Null or undefined default value makes the option list trim white spaces HOT 3
- [material-ui][AppBar] Background color is lighter than what the theme defines HOT 1
- [material-ui][Transition] Add flip transition HOT 1
- [material-ui] Next 13: Prop types error on children when using async component HOT 1
- [material-ui][Dialog] Wrong focus behavior using iOS VoiceOver and FocusTrap
- [material-ui][Slider] Webapp exiting fullscreen when dragging the slider in iPads
- Snackbar background color is not as expected with CssVarProvider
- [pigment-css][vite] HMR doesn't work when removing a css property
- [material-ui][Autocomplete] Async server filtering not working
- [material-ui][next] AppCacheProvider with Next v13 and v14 Pages Router causes flickering
- Small issue in collapsible table docs HOT 2
- [material-ui][Autocomplete] broke backward compatibility with loading state HOT 2
- MUI missing "Emergency" icon HOT 1
- [material-ui] Focus-visible state does not meet WCAG AA across the system HOT 2
- Any plan for mention function with MUI Textarea HOT 1
- [docs-infra] Scoped notification per product HOT 3
- [material-ui][Autocomplete] Allow the user to remove the textarea warning
- [docs-infra] Investigate the report of web vitals
- [Autocomplete] Using limitTags prevents clicking buttons outside of autocomplete while autocomplete is focused
- Issue with createGenerateClassName
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 material-ui.