React natif
npx react-native init MyTestApp
Talhah Patelia
npx react-native init MyTestApp
React Native is an open-source UI software framework created by Meta Platforms, Inc. It is used to develop applications for Android, Android TV, iOS, macOS, tvOS, Web, Windows and UWP by enabling developers to use the React framework along with native platform capabilities.
To get started:
npx react-native init AwesomeProject
or you can start with Expo CLI
npm install -g expo-cli
expo init AwesomeProject
// well designed library to check your password strength
import { PasswordMeter } from 'react-native-password-meter';
// ...
const [password, setPassword] = React.useState({ value: '', error: '' });
const [passwordScore, setPasswordScore] = React.useState(0);
const _updateScore = (val: any) => {
setPasswordScore(val);
};
<TextInput
style={{
height: 50,
borderColor: 'gray',
borderWidth: 1,
width: '100%',
borderRadius: 6,
color: 'white',
padding: 10,
}}
returnKeyType="done"
value={password.value}
onChangeText={(text) => setPassword({ value: text, error: '' })}
secureTextEntry={true}
/>
<PasswordMeter
password={password.value}
onResult={(val) => {
_updateScore(val);
}}
/>
// noice library to use with react native paper
import { PaperSelect } from 'react-native-paper-select';
// ...
const [colors, setColors] = useState({
value: '',
list: [
{ _id: '1', value: 'BLUE' },
{ _id: '2', value: 'RED' },
{ _id: '3', value: 'GREEN' },
{ _id: '4', value: 'YELLOW' },
{ _id: '5', value: 'BROWN' },
{ _id: '6', value: 'BLACK' },
{ _id: '7', value: 'WHITE' },
{ _id: '8', value: 'CYAN' },
],
selectedList: [],
error: '',
});
<PaperSelect
label="Select Colors"
value={colors.value}
onSelection={(value: any) => {
setColors({
...colors,
value: value.text,
selectedList: value.selectedList,
error: '',
});
}}
arrayList={[...colors.list]}
selectedArrayList={colors.selectedList}
errorText={colors.error}
multiEnable={true}
textInputMode="flat"
searchStyle={{ iconColor: 'red' }}
/>;
npx react-native init AwesomeTSProject --template react-native-template-typescript
I've discovered ReactNative provides a way to inspect
DOM of application (with android, shake device, toggle inspect).
It turns out my menu item was shadowed by Context.Consumer.
When I removed <Provider> tags from my render () section,
it finally worked (was able to handle clicks).
Probably worth mentioning: from the very beginning my
AppContainer at the top most level was wrapped like this:
<PaperProvider>
<StatusBar
backgroundColor={Colors.TOOLBAR_BACKGROUND}
barStyle="light-content"
/>
<AppContainer />
</PaperProvider>
//if you want to use expo for your react native app.
//first you need to install expo-cli.
npm install -g expo-cli
//after that use expo init <name>.
//chose the name you wnat.
expo init appName
npm install -g create-react-native-app
npm install @react-navigation/material-bottom-tabs react-native-paper react-native-vector-icons
create-react-native-app AwesomeProject cd AwesomeProject npm start # or yarn start if cli used yarn to install