FontAwesome css classes missing? - reactjs

I'm using a very similar Next.js project setup where the FontAwesome CSS classes are working, the only real difference is that this project is using Tailwindcss, where my previous project was with styled-components
This is my package.json
{
"name": "trpc-test",
"version": "0.1.0",
"private": true,
"scripts": {
"dev": "rm -rf .next && prisma generate && next dev",
"build": "next build",
"start": "next start",
"postinstall": "yarn migrate:prod && prisma generate"
},
"dependencies": {
"#fortawesome/fontawesome-svg-core": "^6.1.1",
"#fortawesome/free-brands-svg-icons": "^6.1.1",
"#fortawesome/free-regular-svg-icons": "^6.1.1",
"#fortawesome/free-solid-svg-icons": "^6.1.1",
"#fortawesome/react-fontawesome": "^0.1.18",
"#next-auth/prisma-adapter": "^1.0.3",
"#prisma/client": "^4.1.0",
"#reduxjs/toolkit": "1.8.1",
"#svgr/webpack": "5.5.0",
"#trpc/client": "^9.26.2",
"#trpc/next": "^9.26.2",
"#trpc/react": "^9.26.2",
"#trpc/server": "^9.26.2",
"framer-motion": "^6.5.1",
"next": "12.2.1",
"next-auth": "^4.10.1",
"nodemailer": "^6.7.7",
"nprogress": "^0.2.0",
"react": "18.2.0",
"react-dom": "18.2.0",
"react-query": "3.39.2",
"react-redux": "8.0.1",
"react-toastify": "8.0.3",
"redux": "4.2.0",
"redux-persist": "6.0.0",
"redux-thunk": "2.4.1",
"superjson": "^1.9.1",
"zod": "^3.17.3"
},
"devDependencies": {
"#types/node": "18.0.0",
"#types/nprogress": "^0.2.0",
"#types/prettier": "^2.4.1",
"#types/react": "18.0.14",
"#types/react-dom": "18.0.5",
"#types/react-redux": "7.1.24",
"#types/react-toastify": "4.1.0",
"#typescript-eslint/eslint-plugin": "5.0.0",
"#typescript-eslint/parser": "5.0.0",
"autoprefixer": "^10.4.7",
"eslint": "8.1.0",
"eslint-config-airbnb": "^19.0.4",
"eslint-config-airbnb-typescript": "^17.0.0",
"eslint-config-next": "12.2.1",
"eslint-config-prettier": "^8.5.0",
"eslint-plugin-cypress": "^2.12.1",
"eslint-plugin-import": "^2.26.0",
"eslint-plugin-jsx-a11y": "^6.6.0",
"eslint-plugin-prettier": "^4.2.1",
"eslint-plugin-react": "^7.30.1",
"eslint-plugin-react-hooks": "^4.6.0",
"postcss": "^8.4.14",
"prettier": "^2.4.1",
"prisma": "^4.1.0",
"tailwindcss": "^3.1.6",
"typescript": "4.3.5",
"vercel": "^27.2.0"
}
}
Then in a component, I'm just doing what I'd usually do
import React from "react";
import type { NextPage } from "next";
import { faTimes } from "#fortawesome/free-solid-svg-icons";
import { FontAwesomeIcon } from "#fortawesome/react-fontawesome";
const Home: NextPage = () => {
return (
<FontAwesomeIcon icon={faTimes} color="#fff" size="1x" />
);
};
export default Home;
The icon renders fine, it's the classes applied to the SVG, those closes don't seem to exist
like fa-1x which would usually apply font-size: 1em; to the element, is not being applied in my app.
I'm not sure if there is something specific I'm missing here?

You need to import the FontAwesome css styles in pages/_app.js
import { config } from '#fortawesome/fontawesome-svg-core'
import '#fortawesome/fontawesome-svg-core/styles.css'
config.autoAddCss = false
export default function MyApp({ Component, pageProps }) {
return <Component {...pageProps} />
}
See https://fontawesome.com/v5/docs/web/use-with/react#getting-font-awesome-css-to-work for more info

Related

Uncaught (in promise) TypeError: Cannot read properties of undefined (reading 'modal')

I'm trying to install #mui/x-date-pickers to my project and I followed the instructions from their website, which you can find here. The problem is when i installed everything and added this code to my project
import React from 'react';
import { LocalizationProvider, TimePicker } from '#mui/x-date-pickers';
import { TextField } from '#mui/material';
import { AdapterMoment } from '#mui/x-date-pickers/AdapterMoment';
import moment from 'moment';
export const Blabla = () => {
const [value, setValue] = React.useState(moment('2014-08-18T21:11:54'));
const handleChange = (newValue: any) => {
setValue(newValue);
};
return (
<LocalizationProvider dateAdapter={AdapterMoment}>
<TimePicker
label="Time"
value={value}
onChange={handleChange}
renderInput={(params) => <TextField {...params} />}
/>
</LocalizationProvider>
);
};
I am getting this error
And this is how my dependencies look like in the package.json file
"dependencies": {
"#mui/x-date-pickers": "^5.0.11",
"auth0-js": "^9.13.2",
"axios": "^0.19.2",
"copy-webpack-plugin": "6",
"crossfilter": "^1.3.12",
"crossfilter2": "^1.5.4",
"cubejs": "^1.3.2",
"d3": "^6.2.0",
"dataloader": "^2.0.0",
"date-fns": "^2.14.0",
"emotion": "^10.0.27",
"emotion-theming": "^10.0.27",
"highcharts": "8.1.2",
"highcharts-custom-events": "3.0.9",
"highcharts-react-official": "3.0.0",
"html-to-image": "^1.10.8",
"i18next": "^19.4.4",
"js-sha256": "^0.9.0",
"json2mq": "^0.2.0",
"jspdf": "^2.5.1",
"jsverify": "^0.8.4",
"leaflet": "^1.7.1",
"mixpanel-browser": "2.41.0",
"moment": "^2.25.3",
"papaparse": "^5.3.0",
"patch-package": "^6.4.7",
"ramda": "^0.27.0",
"react": "^16.13.1",
"react-codemirror": "^1.0.0",
"react-copy-to-clipboard": "^5.0.2",
"react-csv": "^2.0.3",
"react-dates": "^21.8.0",
"react-datetime": "^3.0.4",
"react-dom": "^16.13.1",
"react-dropzone": "^12.0.1",
"react-email-editor": "^1.2.0",
"react-hot-loader": "^4.12.21",
"react-hot-toast": "^2.2.0",
"react-i18next": "^11.4.0",
"react-infinite-scroll-component": "^5.1.0",
"react-leaflet": "^2.7.0",
"react-material-ui-carousel": "^2.3.11",
"react-router-dom": "^5.2.0",
"react-slick": "^0.26.1",
"react-tooltip": "^4.2.11",
"rxjs": "^6.5.5",
"slick-carousel": "^1.8.1",
"topojson-client": "^3.1.0",
"urlencode": "^1.1.0",
"webpack": "^4.42.1"
},
"devDependencies": {
"#babel/core": "^7.12.3",
"#babel/plugin-proposal-class-properties": "^7.8.3",
"#babel/plugin-proposal-optional-chaining": "^7.9.0",
"#babel/plugin-syntax-dynamic-import": "^7.8.3",
"#babel/plugin-transform-react-jsx": "^7.9.4",
"#babel/plugin-transform-runtime": "^7.9.0",
"#babel/preset-env": "^7.9.5",
"#babel/preset-typescript": "^7.9.0",
"#cubejs-client/core": "^0.25.0",
"#date-io/moment": "^2.16.1",
"#emotion/babel-plugin": "^11.7.2",
"#emotion/core": "10.1.1",
"#emotion/react": "^11.10.5",
"#emotion/styled": "^10.0.27",
"#material-ui/core": "^4.9.11",
"#material-ui/icons": "^4.9.1",
"#material-ui/lab": "^4.0.0-alpha.53",
"#mui/material": "^5.11.1",
"#storybook/addon-actions": "^5.3.18",
"#storybook/addon-console": "^1.2.1",
"#storybook/addon-knobs": "^5.3.18",
"#storybook/addon-storyshots": "^5.3.18",
"#storybook/addon-viewport": "^5.3.18",
"#storybook/react": "^5.3.18",
"#svgr/webpack": "^5.3.1",
"#testing-library/jest-dom": "^5.5.0",
"#testing-library/react": "^10.0.4",
"#types/auth0-js": "^9.12.4",
"#types/d3": "^5.16.3",
"#types/geojson": "^7946.0.7",
"#types/jest": "25.2.1",
"#types/json2mq": "^0.2.0",
"#types/jspdf": "^1.3.3",
"#types/leaflet": "^1.5.17",
"#types/lodash": "4.14.151",
"#types/mixpanel-browser": "2.35.6",
"#types/node": "^17.0.17",
"#types/papaparse": "^5.2.5",
"#types/ramda": "0.27.6",
"#types/react": "^16.9.34",
"#types/react-codemirror": "^1.0.3",
"#types/react-copy-to-clipboard": "^4.3.0",
"#types/react-csv": "^1.1.1",
"#types/react-dates": "^17.1.10",
"#types/react-dom": "^16.9.6",
"#types/react-email-editor": "^1.1.1",
"#types/react-leaflet": "^2.5.2",
"#types/react-router-dom": "^5.1.5",
"#types/react-slick": "^0.23.4",
"#types/testing-library__react": "^10.0.1",
"#types/urlencode": "^1.1.2",
"#types/webpack-env": "^1.16.3",
"#typescript-eslint/eslint-plugin": "^5.33.1",
"#typescript-eslint/parser": "^5.33.1",
"autoprefixer": "^9.7.6",
"babel-eslint": "10.1.0",
"babel-loader": "^8.1.0",
"babel-plugin-emotion": "^10.0.33",
"babel-preset-react-app": "^9.1.2",
"css-loader": "^3.5.3",
"eslint": "7.1.0",
"eslint-config-prettier": "6.10.1",
"eslint-import-resolver-jest": "3.0.0",
"eslint-import-resolver-webpack": "0.12.1",
"eslint-plugin-import": "2.21.2",
"eslint-plugin-react": "7.19.0",
"eslint-plugin-react-hooks": "4.0.2",
"html-webpack-plugin": "^4.2.1",
"husky": "^7.0.4",
"jest": "25.2.1",
"jest-emotion": "^10.0.32",
"lint-staged": "^10.1.6",
"npx": "^10.2.2",
"postcss-loader": "^3.0.0",
"postcss-preset-env": "^6.7.0",
"react-test-renderer": "^16.13.1",
"storybook-addon-emotion-theme": "^2.1.1",
"storybook-addon-jsx": "^7.2.3",
"style-loader": "^1.2.1",
"ts-jest": "^25.4.0",
"typescript": "4.6",
"typescript-styled-plugin": "^0.15.0",
"url-loader": "^4.1.0",
"webpack-cli": "^3.3.11",
"webpack-dev-server": "^3.10.3"
},
What am I doing wrong?

react-bootstrap ToggleButton type Radio not showing selected on state update

Since I updated to the latest version of React and react-bootstrap this has not worked. Can someone help me understand why?
When view is changed by any means other than clicking on the toggle button the style does not show as checked.
It works as expected when clicked, but even when I explicitly set checked={true} within the ToggleButton component the button still does not show as checked unless it is clicked.
import React from "react";
import { ToggleButton, ToggleButtonGroup } from "react-bootstrap";
const SidebarMode = ({ view, setView }) => {
return (
<ToggleButtonGroup type="radio" name="modeSelect">
<ToggleButton
id="habitat"
variant="outline-secondary"
value="habitat"
checked={view === "habitat"}
onChange={(e) => setView(e.currentTarget.value)}
>
Visualize Habitat
</ToggleButton>
<ToggleButton
id="add"
variant="outline-secondary"
value="add"
checked={view === "add"}
onChange={(e) => setView(e.currentTarget.value)}
>
Import AOI
</ToggleButton>
<ToggleButton
id="view"
variant="outline-secondary"
value="view"
checked={view === "view"}
onChange={(e) => setView(e.currentTarget.value)}
>
Summarize AOI
</ToggleButton>
<ToggleButton
id="act"
variant="outline-secondary"
value="act"
checked={view === "act"}
onChange={(e) => setView(e.currentTarget.value)}
>
Take Actions
</ToggleButton>
</ToggleButtonGroup>
);
};
export default SidebarMode;
EDIT:
Here's the package.json incase it's a version issue and not user error.
{
"name": "cvt1",
"version": "0.1.0",
"private": true,
"dependencies": {
"#fortawesome/fontawesome-svg-core": "^6.1.1",
"#fortawesome/free-solid-svg-icons": "^6.1.1",
"#fortawesome/react-fontawesome": "^0.2.0",
"#mapbox/mapbox-gl-draw": "^1.3.0",
"#testing-library/jest-dom": "^5.16.4",
"#testing-library/react": "^13.3.0",
"#testing-library/user-event": "^14.2.1",
"#turf/area": "^6.5.0",
"#turf/bbox": "^6.5.0",
"assert": "^2.0.0",
"axios": "^0.27.2",
"bootstrap": "^5.1.3",
"buffer": "^6.0.3",
"chart.js": "^3.8.0",
"deck.gl": "^8.8.4",
"i": "^0.3.7",
"mapbox-gl": "^2.9.2",
"npm": "^8.15.0",
"react": "^18.2.0",
"react-bootstrap": "^2.4.0",
"react-bootstrap-range-slider": "^3.0.8",
"react-chartjs-2": "^4.2.0",
"react-dom": "^18.2.0",
"react-draggable": "^4.4.5",
"react-dropzone": "^14.2.1",
"react-hamburger-menu": "^1.2.1",
"react-icons": "^4.4.0",
"react-map-gl": "^7.0.16",
"react-multi-switch-toggle": "^1.0.12",
"react-redux": "^8.0.2",
"react-resizable-element": "^0.1.5",
"react-router-dom": "^6.3.0",
"react-scripts": "^2.1.3",
"react-select": "^5.3.2",
"react-switch": "^7.0.0",
"react-tooltip": "^4.2.21",
"redux": "^4.2.0",
"redux-thunk": "^2.4.1",
"shpjs": "^4.0.2",
"start": "^5.1.0",
"uuid": "^8.3.2",
"viewport-mercator-project": "^7.0.4",
"worker-loader": "^3.0.8"
},

MaterialBottomTab not appearing on ios simulator

This is my file that I am trying to create a demo of a bottom-tab. The problem is, I only get a blank page, no sign of a bottom tab. There is no error that I can point to. I don't know what is causing it, I deleted and reinstalled the relevant packages a few times already, but had no results. Any help is much appreciated.
import React from 'react'
import {createMaterialBottomTabNavigator} from "#react-navigation/material-bottom-tabs"
const Tab = createMaterialBottomTabNavigator()
const EmptyScreen = () => {
return <View>
</View>
}
export default function HomeScreen() {
return (
<View>
<Tab.Navigator
barStyle={{backgroundColor: "black",
paddingBottom: 48 }}
initialRouteName= "feed">
<Tab.Screen
name = "feed"
component = {EmptyScreen}
/>
<Tab.Screen
name = "Profile"
component = {EmptyScreen}
/>
<Tab.Screen
name = "Add"
component = {EmptyScreen}
/>
<Tab.Screen
name = "Settings"
component = {EmptyScreen}
/>
</Tab.Navigator>
</View>
)
}```
And this is the package.json file in case anyone needs it to reproduce the situation.
```{
"name": "academical",
"version": "0.0.1",
"private": true,
"scripts": {
"start": "expo start --dev-client",
"android": "expo run:android",
"ios": "expo run:ios"
},
"dependencies": {
"#react-native-community/masked-view": "^0.1.11",
"#react-navigation/material-bottom-tabs": "^6.2.3",
"#react-navigation/native": "^6.0.12",
"#react-navigation/stack": "^6.2.3",
"expo": "^46.0.9",
"expo-constants": "~13.2.3",
"expo-splash-screen": "~0.16.2",
"expo-status-bar": "~1.4.0",
"firebase": "^8.10.1",
"react": "18.0.0",
"react-dom": "18.0.0",
"react-native": "0.69.5",
"react-native-gesture-handler": "^2.6.0",
"react-native-paper": "^4.12.4",
"react-native-reanimated": "^2.10.0",
"react-native-safe-area-context": "^4.3.1",
"react-native-screens": "~3.15.0",
"react-native-vector-icons": "^9.2.0",
"react-native-web": "~0.18.7",
"react-navigation": "^4.4.4",
"react-redux": "^8.0.2",
"redux": "^4.2.0",
"redux-thunk": "^2.4.1"
},
"devDependencies": {
"#babel/core": "^7.12.9"
}
}```
Solved. Wrap the Tab.Navigator with a NavigationContainer and set independent = {}.

You may need an appropriate loader to handle this file type. | import History from '../../utils/History';

Am new to reactjs, and am working on a project built on "architectui-react-pro" ui.
The project is working good on my m1 macbook, but not working on my freelancers machines (Windows). I tried to load it on another intel based macbook and am getting this error.
Module parse failed: Unexpected token (11:9)
You may need an appropriate loader to handle this file type.
| import History from '../../utils/History';
| var Login = lazy(function () {
> return import("../../Pages/Login");
| });
|
Following is my package.json file:
"name": "architectui-react-pro",
"version": "1.6.1",
"private": true,
"description": "Financial Assistance - MHB",
"author": "MatrixSoftwares.com",
"homepage": "",
"repository": {
"type": "git",
"url": "git+https://github.com/dpackdev/architectui-react-pro"
},
"dependencies": {
"#fortawesome/fontawesome-free": "^5.15.3",
"#fortawesome/fontawesome-svg-core": "^1.2.35",
"#fortawesome/free-brands-svg-icons": "^5.15.3",
"#fortawesome/free-solid-svg-icons": "^5.15.3",
"#fortawesome/react-fontawesome": "^0.1.14",
"#material-ui/core": "^4.11.4",
"#progress/kendo-react-pdf": "^4.7.0",
"#types/googlemaps": "^3.43.3",
"#types/markerclustererplus": "^2.1.33",
"#wojtekmaj/react-datetimerange-picker": "^2.3.0",
"animate-sass": "^0.8.2",
"apexcharts": "^3.27.1",
"aphrodite": "^2.4.0",
"availity-reactstrap-validation": "^2.7.1",
"axios": "^0.21.1",
"bootstrap": "^4.6.0",
"chart.js": "^2.9.4",
"chartist": "^0.10.1",
"chroma-js": "^2.1.2",
"ckeditor4": "^4.16.1",
"ckeditor4-react": "^1.4.2",
"classnames": "^2.3.1",
"date-arithmetic": "^3.1.0",
"date-fns": "^1.30.1",
"dom-to-pdf": "^0.2.2",
"dropzone": "^5.9.2",
"fibers": "^4.0.2",
"globalize": "^1.4.2",
"google-map-react": "^1.1.5",
"hamburgers": "^0.8.1",
"html2canvas": "^1.0.0-rc.7",
"install": "^0.13.0",
"jquery": "^3.6.0",
"js-base64": "^3.7.2",
"js-md5": "^0.7.3",
"jspdf": "^2.3.1",
"jw-react-pagination": "^1.1.0",
"loaders.css": "^0.1.2",
"m-react-splitters": "^1.2.0",
"moment": "^2.24.0",
"namor": "^1.1.2",
"node-sass": "^4.13.0",
"number-to-words": "^1.2.4",
"pe7-icon": "^1.0.4",
"radium": "^0.26.0",
"rc-slider": "^8.7.1",
"rc-tabs": "^9.6.7",
"rc-tree": "^2.1.4",
"react": "^16.14.0",
"react-animations": "^1.0.0",
"react-anime": "^3.0.3",
"react-apexcharts": "^1.3.9",
"react-app-polyfill": "^1.0.4",
"react-big-calendar": "^0.20.4",
"react-bootstrap-sweetalert": "^4.4.1",
"react-bootstrap-table-next": "^3.2.0",
"react-bootstrap-table2-filter": "^1.2.0",
"react-bootstrap-typeahead": "^3.4.7",
"react-burgers": "^1.3.0",
"react-chartist": "^0.13.3",
"react-chartjs-2": "^2.11.2",
"react-circle": "^1.1.1",
"react-color": "^2.19.3",
"react-compound-slider": "^2.4.0",
"react-cookie": "^4.0.3",
"react-copy-to-clipboard": "^5.0.3",
"react-countup": "^4.2.2",
"react-cropper": "^1.3.0",
"react-datepicker": "^2.9.6",
"react-dates": "^20.3.0",
"react-dnd": "^7.7.0",
"react-dnd-html5-backend": "^7.7.0",
"react-dom": "^16.14.0",
"react-dropzone": "^10.1.9",
"react-flag-icon-css": "^1.0.25",
"react-flagkit": "^1.0.2",
"react-icons": "^3.8.0",
"react-image-crop": "^8.6.12",
"react-input-mask": "^2.0.4",
"react-js-pagination": "^3.0.2",
"react-ladda": "^6.0.0",
"react-liquid-gauge": "^1.2.4",
"react-loader": "^2.4.7",
"react-loader-advanced": "^1.7.1",
"react-loaders": "^3.0.1",
"react-loading-overlay": "^1.0.1",
"react-map-gl": "^5.3.16",
"react-metismenu": "^1.4.0",
"react-motion-drawer": "^3.1.0",
"react-nouislider": "^2.0.1",
"react-numeric-input": "^2.2.3",
"react-on-screen": "^2.1.1",
"react-pagify": "^2.4.0",
"react-paginate": "^6.3.0",
"react-pdf": "^5.3.0",
"react-perfect-scrollbar": "^1.5.3",
"react-popper": "^1.3.11",
"react-rating": "^1.7.2",
"react-redux": "^7.2.4",
"react-redux-form": "^1.16.14",
"react-resize-detector": "^4.2.1",
"react-responsive-tabs": "^3.3.0",
"react-router-dom": "^5.1.0",
"react-scripts": "3.0.0",
"react-scroll": "^1.8.2",
"react-select": "^2.4.4",
"react-simple-maps": "^0.12.1",
"react-sizeme": "^2.6.7",
"react-slick": "^0.26.1",
"react-sortable-tree": "^2.6.2",
"react-sortable-tree-theme-file-explorer": "^2.0.0",
"react-sparklines": "^1.7.0",
"react-sticky-el": "^1.0.20",
"react-stickynode": "^2.1.1",
"react-svg-gauge": "^1.0.10",
"react-sweet-progress": "^1.1.2",
"react-switch": "^4.1.0",
"react-syntax-highlighter": "^10.3.5",
"react-table": "^7.7.0",
"react-textarea-autosize": "^7.1.0",
"react-to-pdf": "0.0.14",
"react-toastify": "^5.4.0",
"react-transition-group": "^1.2.1",
"react-validation": "^3.0.7",
"react-vertical-timeline-component": "^2.5.0",
"react-visibility-sensor": "^5.1.1",
"react-widgets": "^4.6.1",
"react-widgets-globalize": "^5.0.23",
"react-widgets-moment": "^4.0.30",
"react-widgets-simple-number": "^4.1.26",
"reactour": "^1.18.4",
"reactstrap": "^8.9.0",
"recharts": "^1.8.5",
"redux": "^4.1.0",
"redux-form": "^8.3.7",
"redux-logger": "^3.0.6",
"redux-thunk": "^2.3.0",
"rodal": "^1.6.3",
"sass": "^1.35.1",
"slick-carousel": "^1.8.1",
"styled-components": "^4.4.0",
"sweetalert": "2.1.2",
"sweetalert-react": "^0.4.11",
"sweetalert2": "^11.4.0",
"typescript": "^3.9.10",
"validator": "^12.1.0"
},
"scripts": {
"start": "SKIP_PREFLIGHT_CHECK=true react-scripts start",
"build": "SKIP_PREFLIGHT_CHECK=true react-scripts build",
"test": "react-scripts test",
"eject": "react-scripts eject"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": [
">0.2%",
"not dead",
"not ie <= 11",
"not op_mini all"
],
"devDependencies": {
"webpack": "^4.28.4"
}
}
And here is the code from "/src/Layout/AppMain/index.js"
import { Router, Route, Switch, Redirect, useLocation } from 'react-router-dom';
import React, { Suspense, lazy, Fragment, useEffect } from "react";
import Loader from "react-loaders";
import { ToastContainer } from "react-toastify";
import PrivateRoutes from '../../utils/PrivateRoute';
import History from '../../utils/History';
const Login = lazy(() => import("../../Pages/Login"));
const AppMain = () => {
const location = useLocation()
if(location.pathname === '/')
{
History.replace('/applicant/analytics')
return <Redirect to="/applicant/analytics"/>
}
const suspenseFallback = (
<div className="loader-container">
<div className="loader-container-inner">
<div className="text-center">
<Loader type="ball-pulse"/>
</div>
<h6 className="mt-3">
Please wait while we load all the Applications examples
<small>Because this is a demonstration we load at once all the Applications examples. This wouldn't happen in a real live app!</small>
</h6>
</div>
</div>
)
return (
<Fragment>
<Suspense fallback={suspenseFallback}>
<Router history={History}>
<Switch>
<Route path="/applicant/login" component={Login} exact/>
<Route path="/" component={PrivateRoutes} />
</Switch>
</Router>
</Suspense>
<ToastContainer/>
</Fragment>
)
};
export default AppMain;
Please help me with getting the project up and running. Thanks, Mustafa.

react-redux v7.2 withRef is removed. To access the wrapped instance, use a ref on the connected component

I want to connect the application with the rest of my components. But I've got this error:
react-redux v7.2 withRef is removed. To access the wrapped instance, use a ref on the connected component
This is my index.js
import 'bootstrap/dist/css/bootstrap.min.css';
import React from 'react';
import ReactDOM from 'react-dom';
import App from './components/App';
import reducers from './reducers';
import { Provider } from 'react-redux';
import { createStore, applyMiddleware } from 'redux';
import reduxThunk from 'redux-thunk';
import { composeWithDevTools } from 'redux-devtools-extension';
import * as serviceWorker from './serviceWorker';
import axios from 'axios';
window.axios = axios;
const middleware = composeWithDevTools(applyMiddleware(reduxThunk));
const store = createStore(reducers,{},middleware);
ReactDOM.render(
<Provider store={store}>
<App />
</Provider>,
document.getElementById('root')
);
serviceWorker.unregister();
My App.jsx
import React, { Component } from 'react';
import { BrowserRouter } from 'react-router-dom';
import './dashboard.css';
import Header from './Header';
import LeftMenu from './LeftMenu';
import MainContainer from './MainContainer';
class App extends Component {
render() {
return (
<div>
<BrowserRouter>
<div>
<Header />
<LeftMenu />
<MainContainer />
</div>
</BrowserRouter>
</div>
);
}
}
export default App;
And this is my package.json
{
"name": "client",
"version": "0.1.0",
"private": true,
"dependencies": {
"#material/react-text-field": "^0.15.0",
"#progress/kendo-react-dropdowns": "^3.11.0",
"#progress/kendo-react-intl": "^3.11.0",
"axios": "^0.18.0",
"bootstrap": "^4.4.1",
"classnames": "^2.2.6",
"cuid": "^2.1.8",
"custom-select": "^1.1.15",
"date-fns": "2.0.0-alpha.27",
"final-form": "^4.18.7",
"final-form-arrays": "^3.0.2",
"final-form-calculate": "^1.3.1",
"globalize": "^1.4.2",
"material-ui": "^0.20.2",
"moment": "^2.24.0",
"prop-types": "^15.7.2",
"rc-datetime-picker": "^1.6.1",
"react": "^16.13.0",
"react-bootstrap": "^1.0.0-beta.17",
"react-charts": "^2.0.0-beta.6",
"react-cropper": "^1.3.0",
"react-datepicker": "2.5.0",
"react-datetime": "^2.16.3",
"react-datetime-picker": "^2.9.0",
"react-datetimepicker": "^2.0.0",
"react-dom": "^16.13.0",
"react-dropzone": "^10.2.1",
"react-google-charts": "^3.0.15",
"react-html-parser": "^2.0.2",
"react-infinite-scroller": "^1.2.4",
"react-lazyload": "^2.6.5",
"react-moment": "^0.9.7",
"react-native": "^0.61.5",
"react-native-modal-datetime-picker": "^8.5.1",
"react-native-numberpicker": "0.0.5",
"react-native-paper": "^3.6.0",
"react-numeric-input": "^2.2.3",
"react-numpad": "^5.0.4",
"react-phone-number-input": "^3.0.19",
"react-places-autocomplete": "^7.2.1",
"react-radio-buttons": "^1.2.2",
"react-radio-group": "^3.0.3",
"react-redux": "^7.2.0",
"react-redux-firebase": "^2.5.0",
"react-redux-toastr": "^7.6.4",
"react-router-dom": "^5.1.2",
"react-router-v3": "^3.2.1",
"react-scripts": "3.0.0",
"react-select": "^3.0.8",
"react-textfield": "0.0.6",
"react-widgets": "^4.4.11",
"react-widgets-globalize": "^5.0.20",
"react-widgets-moment": "^4.0.27",
"react-widgets-moment-localizer": "^1.0.2",
"react-widgets-simple-number": "^4.1.23",
"redux": "^4.0.5",
"redux-auth-wrapper": "^2.1.0",
"redux-form": "^7.4.2", //redux-form works with react-redux?
"redux-thunk": "^2.3.0",
"revalidate": "^1.2.0",
"semantic-ui-react-numberpicker": "0.0.1-b",
"textfield": "^1.0.4"
},
"scripts": {
"analyze": "source-map-explorer 'build/static/js/*.js'",
"start": "react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject",
"deploy": "npm run build && firebase deploy"
},
"eslintConfig": {
"extends": "react-app"
},
"browserslist": {
"production": [
">0.2%",
"not dead",
"not op_mini all"
],
"development": [
"last 1 chrome version",
"last 1 firefox version",
"last 1 safari version"
]
},
"devDependencies": {
"#types/react-redux-toastr": "^7.6.0",
"#types/react-router-dom": "^4.3.4",
"http-proxy-middleware": "^0.20.0",
"redux-devtools-extension": "^2.13.8",
"source-map-explorer": "^1.5.0",
"typescript": "^3.8.3"
}
}
All I want is react-redux v 7.2.0 works with my application. I don't know if I have to update redux form v 7.4.2 to 8.1 or how can I fix this issue.
Yes, update Redux-Form to the latest version. The older versions of Redux-Form stopped only worked with React-Redux v5 and earlier.

Resources