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)
- [Stack] Allows clearing of `margin-left` property of child items.
- Material Icons has bug in syntax HOT 3
- [material-ui] Add `PropsProvider` for Pigment CSS integration
- [docs] Popover flip HOT 3
- Boolean Value Not Rendered in MUI Typography Component HOT 1
- Typograhpy - Text Formatting - Please add native support for configurable text highlighting to override native <mark> tag
- [docs] Sign-in side template image not loading (503 error) HOT 8
- Text Field Auto Complete/Auto Fill Tab Behavior HOT 1
- Mui input base text area style is not applied correctly with input props on 5.15.11 from 5.15.10 HOT 3
- [migration] Provide migration guide/codemods for migrating from v4 to v6
- Autocomplete: end adornment placement of TextField HOT 2
- [material-ui][Button] - Button doesn't have the loading props HOT 2
- [dialog] Support click away rejection animation for confirmation dialog
- TypeScript error when using `sx={visuallyHidden}` with `exactOptionalPropertyTypes` HOT 1
- [material-ui] Remove `enableColorScheme` prop from CssBaseline HOT 5
- [docs] Change pnpm order, place second HOT 2
- Multilevel menu HOT 1
- [Select] Render options below Select's DOM position instead of in a portal HOT 2
- [RFC] Restructure icons exports HOT 2
- [SKELETON] [BUG] Skeleton Height is Unpredictable(Ghost Padding or Margin) Without `variant` Attribute HOT 2
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.