Free your components from margins using the blank spacer!
- 💡 Why use blank spacer?
- 📦 Installation
- ℹ️ Usage
- 📕 Recipes
A good component should be usable in any layout & context. This means the component should not influence anything outside of it's own children.
Margins however break this rule by defining how much space another component should distance itself from your component. This has made many components difficult to use in certain layouts and also made maintaining the design system very difficult in the long run for my personal projects.
Max Stoiber has written a nice blog post on why we shouldn't use margins and move to spacers.
React Native Blank Spacer is component which can be used to apply blank spaces between components effectively removing the need to apply margins in general 🎉
#npm
npm install --save react-native-blank-spacer
#yarn
yarn add react-native-blank-spacer
import BlankSpacer from "react-native-blank-spacer";
const App = () => (
<View>
<Text>Hello!</Text>
<BlankSpacer height={16} />
<Text>Nice to Meet you!</Text>
<View>
);
export default App;
Height of the blank spacer
Width of the blank spacer ﹣ used to apply space when flexDirection: row
Color of the blank spacer
All the existing View props are supported as blank spacer extends the view component
-
Follow the link to the snack for Simple Usage
-
If you want to apply spacing based on the device screen size, you can use the blank spacer with react-native-responsive-dimensions
-
If you want a blank space to avoid keyboard (i.e) a keyboard avoiding view, you can use react-native-keyboad-spacer or pair the blank spacer with keyboard height received from
useKeyboard
hook of react native hooks
MIT © DaniAkash