React JS interview 2023 Live Coding Round (Mock)
Вставка
- Опубліковано 25 сер 2024
- Never faced React JS live coding round? You can experience React JS Interview Live coding round where a candidate is asked to build a UI component. #reactjs #javascript #interview #mockinterview
🤯 Crash Courses (Single Video)
Git/Github Crash Course : bit.ly/3JSA5VT
TypeScript Crash Course : bit.ly/372dZSh
Angular Crash Course : bit.ly/3DoGJR1
Vue JS Crash Course : bit.ly/3uDujRl
Python Crash Course : bit.ly/3Dod7U2
React Router Crash Course : bit.ly/36YfO2i
🧑🏫 Full Course Playlists
HTML : bit.ly/36IMq0h
CSS : bit.ly/3LpRQw6
JavaScript : bit.ly/3u049tf
BootStrap : bit.ly/3NA9nDJ
ES 6 : bit.ly/3DvYCh6
DOM Playlist : bit.ly/35nMKB7
ReactJS (Redux & Hooks) : bit.ly/3iMethN
React with TypeScript : bit.ly/3fQjXtF
React Hooks: bit.ly/3Vmh7wV
Redux: bit.ly/3yAIIkl
NodeJS/ExpressJS : bit.ly/35nN6Yt
MongoDB / Mongoose : bit.ly/3qPj0EO
💻 Projects Playlists
MERN Stack Complete Ecommerce : bit.ly/3ymSs0E
Web Design HTML+CSS - Home Page : bit.ly/35nZiIB
Web Design BootStrap - E-Commerce Site : bit.ly/3iPhaz7
React/Redux/Firebase - Todo-App : bit.ly/3DnekL8
🕹 Mini Projects (Single Video)
React - Tic Tac Toe (Redux / Hooks) : bit.ly/3uzLEuy
React - Game of Flag Quiz (Hooks) : bit.ly/3LpTC0e
React - Google Translate Clone (Hooks) : bit.ly/3Lo9xvZ
React - Chat App using Firebase (Hooks) : bit.ly/3wLgymj
Visit our site: coderdost.com
🔴 Full Courses List : coderdost.com/...
🔴 Full Projects List : coderdost.com/...
💾 Source Codes at : github.com/cod...
The simple approach is that you can create another component for your list-item and in that component declare the isChecked state.
Exactly, that way the logic is separeted, and I think's that's one of the main reason of using React.
@@aniket-in can you please share the code on this logic
@@bishwajeetpandey1570 import { useState } from "react";
import List from './List'
const App = ()=>{
const arr = ['play games', 'read book', 'play chess']
const [arr1, setArr1] = useState(arr)
const handleDelete = (idx)=>{
setArr1(arr1.filter((item, i)=> i!==idx))
}
return (
{
arr1.map((item, idx)=>(
handleDelete(idx)} item={item}/>
))
}
)
}
export default App;
import { useState } from "react";
const List = ({onDelete, item})=>{
const [checked, isChecked] = useState(false)
return (
< input type="checkbox"
checked={checked}
onChange={(e)=>isChecked(e.target.checked)}
/>
{item}
{
checked && X
}
)
}
export default List;
@@anshulvairagade1604 every thing is seems readable and fine but why u passed item prop from App component to list component
@@bishwajeetpandey1570 item means the element of our array, and that arrar is present in App component, and we are using that particular element and printing it using another list component.
To add more logic into it i.e adding check box etc
I hope this helps
This is my solution of this problem
import { useState } from "react";
const arr=["Apple", "Orange", "Banana"]
export default function App() {
const [fruitsArr, setFruitsArr] = useState([...arr]);
const [chkBoxStates, setChkBoxStates] = useState(arr.map(()=>false));
const deleteClickHandler = (index) => {
alert(index);
const filteredArr = [];
for (let i = 0; i < fruitsArr.length; i++) {
if (i !== index) filteredArr.push(fruitsArr[i]);
}
setFruitsArr(filteredArr);
};
const handleCheck = (isChecked, index) => {
setChkBoxStates((prevArray) => {
const newArray = [...prevArray]; // create a new array based on the previous state array
newArray[index] = isChecked; // modify the element at the specified index
return newArray; // return the new array as the updated state value
});
};
return (
{console.log("render")}
Hello Codeandbox
Start editing to see some magic happen!
{fruitsArr.map((element, index) => {
return (
handleCheck(e.target.checked, index)}
>{" "}
{element}
{chkBoxStates[index] && (
deleteClickHandler(index)}>Delete
)}
);
})}
);
}
But the problem is when i click the checkbox for first item then it's delete button shows and after deleting that item the checkbox for second item is automatically checked and so on.
***child component***
import React, { useState } from 'react'
export const HobbyList = (props) => {
const [checkBox, setCheckBox] = useState(false)
const handleCheckBox = ()=> {
// console.log(!checkBox);
setCheckBox(!checkBox)
}
return (
{props.hobby}
{checkBox ? props.handleDelete(props.hobby)}>delete : null}
)
}
**parent component**
//neglect the commented code , this is my create app for solving the interview questions
import { useState } from 'react';
import './App.css';
// import { CountriesDropdown } from './CountriesDropdown';
import { HobbyList } from './HobbyList';
// import { InputDisplay } from './inputDisplay';
// import Register from './Register';
function App() {
const hobbies =["playing", "singing","kapring" ]
const [hobbiess, setHobbies] = useState(hobbies)
// you only have to show the delete button when checkbox is checked
const handleDelete =(hobbo) => {
const hob = hobbiess.filter(hobby => hobby!== hobbo)
setHobbies(hob )
}
// console.log(countries);
return (
{hobbiess.map(hobby=>)}
{/* */}
{/* */}
{/* */}
);
}
export default App;
To implement this task first you will have to add ischeck key inside the copyarr through map and then pass index and target value through handlechnage function .arr[index] ={..arr[index], ischeck=!arr[index].ischeck
!ischeck} and then you make a condition inside the jsx that ischeck==true && Delete
Well he is tried nicely very good :)
i haven't learnt react yet, but ig a simple vanilla js script for deleting part would be this:
const buttons = document.querySelectorAll('li button')
buttons.forEach((button)=>{
button.addEventListener('click',(event)=>{
event.target.parentNode.remove()
})
})
create child component for each item and manage check state inside that component for each individual list item.
❤U r right brother😊
For checkboxes we can create an state which will be an array of all the selected boxex item index... This array will be manipulated upon clicking on the checkbox.. Checkbox unchecks and checks itself.. No need to keep a checkbox status in this case.. Now upon clicking a checkbox pass the index of item.. Now check whether the checkbox array state contains that index or not (by using arr.includes (index)).. If yes.. Then splice that index.. If no then push the index in that array.. This way we will always have an array of items index for which checkbox is selected.. Based on that we can do conditional rendering of delete button..
Easy to solve, u can create a component that return a state(it`s called children as a function or if u familiar with callback is same method). Then u can use it after mapping so u create a seperate state and then u can use it to handle show delete button
import React, { useState } from "react";
const hobbies = [
{
id: 1,
nama: "Main gitar",
},
{
id: 2,
nama: "Nonton",
},
{
id: 3,
nama: "Main Game",
},
];
type CheckboxProps = {
checked: boolean;
setChecked: React.Dispatch;
};
type WrapperCheckboxProps = {
children: (props: CheckboxProps) => React.ReactNode;
};
const WrapperCheckbox: React.FC = ({ children }) => {
const [checked, setChecked] = useState(false);
return {children({ checked, setChecked })};
};
function App() {
const [newArr, setNewArr] = useState(hobbies);
const handleDelete = (id: number) => () => {
const newFilteredArr = newArr.filter((val) => val.id !== id);
setNewArr(newFilteredArr);
};
return (
Hobbies
{newArr.map((el) => (
{({ checked, setChecked }) => (
{el.nama}
setChecked(e.target.checked)}
/>
{checked && Delete}
)}
))}
);
}
export default App;
my solution
@@rizkydjanuar2809 u made it 100 times complex
check could be a object or object of arr assign to check state when bool and index were saved and then access the obj according to it.
Amazing..... what the helpful video you are making!
You can create a one sate like:
const [checkedInputs, setCheckedInputs] = useState([]);
And then add the current index + checkedInputs to checkedInputs state like
setCheckedInputs([... checkedInputs, index])
He has lifted the state up i.e state controlled by parent that why when he click another checkbox check become false and button disappeard
The solution is that he has to create diff state for diff children
pl. continue this series , upload videos weekly , help many aspirants
export default function App() {
const [data, setData] = useState(["A", "B", "C"]);
return data.map((label, i) => (
setData(data.filter((name) => label !== name))}
key={label}
label={label}
/>
));
}
function Root({ label, onDelete }) {
const [checked, setChecked] = useState(false);
return (
setChecked(e.target.checked)}
type="checkbox"
/>
{label}
{checked && delete}
);
}
Awesome 😍
He can create an another component for every list item and pass the props for every single list item.
Thanks.... 😂😂❤❤
Thanks for such a good tutorial
I would have used useReducer Hook to handle checkbox value for that particular input and trigger delete if selected. Simple!!
Sir, should we expect these kind of questions for a 2 yrs exp IT person ? Or much harder than this ?
if someone is taking a live interview you can expect a similar level. But otherwise a little more harder will be there. Live meaning someone checking while you are coding... but sometime they just given questions and expect you to submit in 2 hours etc. Then it will be much harder.
These questions can asked for fresher ?@@coderdost
delete an elem from arr .. let's use filter .. yeah .. if an item is at the last position we need to iterate the whole array and filter ... hmm.. very efficient
Wow upload more videos on interview coding round.
@Hitesh Choudhary , best teacher 🎉🎉 thank you sir.
How much salary a guy can expect from this level of interview
Internship
Delete can be done with the help of splice
Lets Try to Correct His Logic import { useState, useEffect } from "react";
import "./styles.css";
const test = ["1", "2", "3"];
export default function App() {
const [arrcopy, setArrCopy] = useState(test);
const [checkboxArr, setCheckBoxArr] = useState(
Array(test.length).fill(false)
);
const HandleChecbox = (isChecked, Iteam) => {
setCheckBoxArr((prevCheckboxArr) => {
const newArr = [...prevCheckboxArr];
newArr[Iteam] = isChecked;
return newArr;
});
console.log(checkboxArr);
};
const handleDlete = (ItemIndex) => {
let newArr = arrcopy;
let filterarray = newArr.filter((item, index) => {
return index !== ItemIndex;
});
setArrCopy(filterarray);
};
return (
Hello CodeSandbox
Start editing to see some magic happen!
{arrcopy.map((item, index) => {
return (
HandleChecbox(e.target.checked, index)}
/>
{item}
{checkboxArr[index] && (
handleDlete(index)}>DeleteButton
)}
);
})}
);
}
in order to render the updated list when the delete button click why not we can use useState hook for the arr array list...any suggestion?
Just use input type checkbox and label
he did in very complicated way
this is very nice
You can use bubbling here
Sir your videos are very useful and you also remains cool and calm
Awesome
is it for fresher or how many experienced level question
Amazing..
Sir, from were can i get this type of questions
Sir how i can I build logic in react 😊..some one help me
input pain click nahi change event lagta hain
Interview me ese hi questions puchhte he kya? For freshers? I'm applying for MERN stack
They may ask simple conceptual questions also as given in this playlist : ua-cam.com/play/PL2PkZdv6p7ZnxpstmVUbybt5M9hjTayY_.html
These type of questions are asked in companies which take some time to evaluate candidates for React skill - otherwise they may ask even plain programming question or DS question. There is no set rule
why you not complete the answer ?
candidate only coded till that point
for reactjs coding from where to prepare?
I think there is no good question sets available. generally better to work on some small projects. that itself is a good practice.
chatgpt be like: bas itna hi abhi kar deta hu
🤣
thanks, very informative video
Hi Vivek, do you know any telugu reactjs developers or full stack developers in india? Please let me know if they need any extra income.
very simple question, god did it very first try , so i think god is god always right
please share codesanbox link of such mocks
codesandbox.io/s/long-leaf-pwxu4i
chai aur code
Experience???
Fresher
which software is he using?
Online code editor. Syncfiddle
How can i give the mock interview to you
Generally we release a form on channel community
@@coderdostcan u plz tell me how to give mock interview to u ???
@@gorikhanna6070 We put up a from on community post for mock interviews. you can apply once that is available.
Sir , i'm doing BBA from regular private college and I have skill in MySQL ,php, javascript,html , css so can I get job in it sector? Please tell me
PHP is still used but competition is high, from old developers. You will have to try with some internships at a company where they use PHP or some PHP based framework. Laravel is top framework these days. PHP is not high paying initially, but it is a widely used language still.
@@coderdost sir i know i asking that i am BBA
student so can i get jobs in it sector if i had THAT
skills
@@yikanaveen kyu nahi...companies ko bus skills chahiye...Projects banao aur dikhaao
@@yikanaveen Yes, however your first job will be hard to crack in traditional IT companies which filter based on degreee and field. So you have to try for startups and companies which are remote work based and looking for skills rather than background of degree. After first job, things change.. and experience matters.
It's easy for me
Do it without react with vanilla js
@@shreyanshmishra6613 for sure brother
I want to know about that it's scripted or not. Or
The student already know the question.
No student is joining live
@@coderdost TQ for reply
And he can use Google.
Is this for freshers or experience
Freshers. But for some for experienced dev also they ask simple question initially and then ask to add something to it.. live interviews …dont have very hard questions .. hard ones are given in take home assignments or machine round without a live interviewer
will it be considered a pass ??
Depends on post, for fresher level it is PASS. as only few ppl can really code in live situation and limited time.
It's a good practice to create a state like
const [state, setState] = useState()
And not like this
const [state, setName] = useState()
hi sir can you give the solution of that problem ?
function sayHello(){
console.log("Hello");
}
function sayHi(){
console.log("sayHi")
}
function add(a,b,fun){
sayHello()
sayHi(10)
console.log(a+b)
}
add(10,20,sayHello)
here i can call the sayHi() fuction in the add function()
i guess sayhi() fun no console any value because its not access in fun add
Wow, so basic problem and he cant resolve it , very weak guy
live coding makes people nervous, specially when other person is looking every second.
function ListItem(props) {
const [btn, setBtn] = useState(false);
const [t, setT] = useState(true);
function handlePress(event) {
// console.log(event.target.value);
setBtn(!btn);
}
function handleClick(event){
setT(false);
}
return (
{props.name}
delete
);
}
my solution:
import "./styles.css";
import { useState } from "react";
export default function App() {
const arrInp = [
{ id: 1, item: "task1" },
{ id: 2, item: "task2" },
{ id: 3, item: "task3" },
{ id: 4, item: "task4" }
];
const [completed, setCompleted] = useState([]);
const [arr, setArr] = useState(arrInp)
const handleCheck = (e, id) => {
if (e.target.checked && !completed.includes(id)) {
setCompleted([...completed, id]);
} else {
let ind = completed.indexOf(id);
let newArr = [...completed];
newArr.splice(ind, 1);
setCompleted(newArr);
}
};
const deleteTask = (id)=> {
let temp = [...arr].filter(it => it.id!==id)
console.log(temp)
setArr(temp)
}
return (
{arr.map(({ id, item }) => {
return (
handleCheck(e, id)} type="checkbox" />
{item}
{completed.find((task_id) => task_id === id) && (
deleteTask(id)}>Delete
)}
);
})}
);
}
//
const [check, setCheck] = useState({})
const handleCheckBox = (index, e) => {
setCheck(preValue => ({...preValue, [index]: e.target.checked}))
}
heres my answer to this problem
function List() {
const todos = [
{
label: "Magkaon",
id: 1,
isDone: false
},
{
label: "Maglung-ag",
id: 2,
isDone: false
},
{
label: "Manotbrush",
id: 3,
isDone: false
},
{
label: "Maglutog sud an",
id: 4,
isDone: false
}
];
const [lists, setLists] = useState(todos);
const handleClick = (id) => {
const updatedLists = lists.filter(list => {
return list.id !== id;
});
setLists(updatedLists);
}
const handleChange = (id) => {
const updatedLists = lists.map(list => {
if(list.id === id){
return {
...list,
isDone: !list.isDone
}
}
return list
});
console.log(updatedLists)
setLists(updatedLists);
}
const renderedLists = lists.map(list => {
return(
handleChange(list.id)} checked={list.isDone} />
{list.label}
{list.isDone && handleClick(list.id)}>Remove}
);
});
return(
{renderedLists}
);
}
excuse my bisaya. lol
const [showDelete, setShowDelete] = useState([]);
const handleCheckbox = (value, todo) => {
showDelete.includes(todo)
? setShowDelete(showDelete.filter((item) => item !== todo))
: setShowDelete([...showDelete, todo]);
};
handleCheckbox(e.target.checked, todo)}
/>
{showDelete.includes(todo) ? (
handleDeleteTodo(index)}>Delete
) : null}
can you please explain handleCheckbox code
@@sandeepgaur98223
I have maintained a state named "showDelete" which contain array of todo.
Now how it worked :
Whenever user click on checkbox , handleCheckbox will be triggered and in this function I have passed value (checked state which is further not used in function definition) and another is todo which are using in function definition .
So
showDelete.includes(todo) this line checked that current todo is present in state or not , if yes then we are filtering it and if not then we are adding it
due to this We are using further this state to show Delete button corresponding to checkbox on the basis of corresponding todo is present in that state or not.
Hope it is clear?
@@rathore_shantilal Thanks! It was indeed a very clear and to the point explanation!