@witivio_teamspro/northstar-form v6.1.5
FluentUI React Northstar Form
How to use it?
- Create a functional React component
- Import this piece of code into your React component:
const signUpForm = useForm({
items: {
email: Input({
inputMode: "email",
required: true,
label: "Email",
placeholder: "Enter your email",
inverted: props.invertColors,
}),
pseudo: Input({
inputMode: "text",
required: true,
label: "Pseudo",
placeholder: "Enter your pseudo",
inverted: props.invertColors,
}),
gender: RadioGroup({
required: true,
label: "Gender",
items: [{label: "Male", value: 0}, {label: "Female", value: 1}, {label: "Other", value: 3}]
}),
avatar: ImagePicker({
label: "Avatar",
}),
agreeConditions: Checkbox({
label: "I agree conditions",
toggle: true,
required: true,
initialValue: false,
})
},
});useForm hook
Hook parameters
| Property | Description |
|---|---|
| items* | List of fields of the form |
| locale | Locale for translations |
| fluid | Take the full width of form container |
| styles | Custom styles for the form |
| className | Class name of the form |
| readOnly | Fields can only be read |
| inverted | Invert background color of fields |
| disabled | Fields are disabled |
Hook returned properties
| Property | Description |
|---|---|
| formItems | An object containing all fields elements of the form |
| state | State properties of the form |
| isValid | Form validity |
| renderForm | Function to render form |
| reset | Function to reset form |
| clear | Function to clear form |
| setFieldsInitialValues | Function to set form initial values |
| setFieldsValues | Function to set form values |
| hasChanged | Has form changed ? |
Update global form settings
- Use
UseFormSettingsProviderinindex.tsxfile.
const root = ReactDOM.createRoot(
window.document.getElementById('root') as HTMLElement
);
root.render(
<UseFormSettingsProvider>
<App/>
</UseFormSettingsProvider>
);- Use
useFormSettingshook to get and set global form settings.
const MyComponent = () => {
const updateFormSettings = useFormSettingsUpdater();
useEffect(() => {
updateFormSettings({
locale: "fr",
inverted: true,
readOnly: true,
onLoadRichTextImage: async (src, setSource) => {
setSource("https://static.wikia.nocookie.net/official-furby/images/e/ed/80FAD579-69DB-4057-AC22-AED3AB66BDDD.gif");
await new Promise(resolve => setTimeout(resolve, 1000));
setSource(src);
}
});
}, [inverted, readOnly, disabled]);
return (
<div>Hello World</div>
)
}All forms will use these settings by default.
Check source code of examples for more information.
8 months ago
8 months ago
8 months ago
8 months ago
9 months ago
10 months ago
10 months ago
10 months ago
10 months ago
12 months ago
12 months ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
1 year ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago