Build A Realtime Chat App In ReactJS and NodeJS | Socket.io Tutorial

  Рет қаралды 299,786

PedroTech

PedroTech

Күн бұрын

Пікірлер: 520
@dexcoder1207
@dexcoder1207 2 жыл бұрын
if anyone receive the msg twice you can solve that issue like this: useEffect(() => { socket.off("receive_message").on("receive_message", (data) => { setMessageList((list) => [...list, data]); }); }, [socket]); And thank you so much for this video i was really looking to understand the concept of chatting waiting for the second part.
@olexandrsokolyk4690
@olexandrsokolyk4690 2 жыл бұрын
Thank you )
@rokibgyimah8675
@rokibgyimah8675 8 ай бұрын
Thank you very much. But please why we should add "socket.off("receive_message")" ?
@ine_kid
@ine_kid 8 ай бұрын
thanks
@cryptofolks67
@cryptofolks67 2 ай бұрын
thanks heaps
@fanifrancs
@fanifrancs Жыл бұрын
wow, you are doing great bro. I have been searching for react videos and your videos usually pop up. I have been loving your tutorials.
@brilliantatosam
@brilliantatosam 3 жыл бұрын
Best video on the internet about this topic. You're a wonderful tech teacher
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Glad you think so!
@lakkuntlanaveen1678
@lakkuntlanaveen1678 9 ай бұрын
​@@PedroTechnologiesin this vedio u didn't connect with mongodb
@maxwong4657
@maxwong4657 2 жыл бұрын
Awesome tutorial as always!! very clear and elaborated! However, when I tested my app, there was an issue that when. I send a message, and the message is displayed twice. The solution is : in the useEffect() hook, we have to write the cleanup function below: return () => socket.removeListener('receive_message') It will fix the problem.
@denisjunior1086
@denisjunior1086 2 жыл бұрын
Can you explain why we have to put this ?
@jonelbarrientos7057
@jonelbarrientos7057 2 жыл бұрын
thanks bro
@thequang9234
@thequang9234 2 жыл бұрын
thanks bro
@nikhilvijayan3411
@nikhilvijayan3411 2 жыл бұрын
Thanks for this, Max
@ankurgoswami4441
@ankurgoswami4441 2 жыл бұрын
thanks bro
@spondoolie6450
@spondoolie6450 Жыл бұрын
If anyone is having problems with the messages double-rendering.... React v18 (which came out after this video) now double-renders the useEffect hook and you'll see the messages double-feed in the chat. To solve this problem use the useMemo hook.... and still use "socket" in the dependency array.
@codevanie-misery
@codevanie-misery Жыл бұрын
In what part do I put the useMemo hook?
@programmingrush
@programmingrush Жыл бұрын
thanks bro, i was figuring it out
@saisushanth8507
@saisushanth8507 Жыл бұрын
bro, why was that happening and how can useMemo hook solve the issue??
@jotaroisdarius1918
@jotaroisdarius1918 Жыл бұрын
@@saisushanth8507 it's because of react strict mode, and it only happens in dev and not prod, if you check the index/main file of your react app you're gonna notice that's it's wrapped around StrictMode tags, just remove them ( not recommended )
@lucas-kg7bj
@lucas-kg7bj Жыл бұрын
@@jotaroisdarius1918 this is the fix
@MyRc16
@MyRc16 2 жыл бұрын
Hi Pedro! Great Video. Just in case someone need it i was having an issue where messages where being sending twice, i couldnt explain why, wasted 1 hour of my time comparing my code with pedro's and at the end it was the React.StrictMode wrapping my App, stric mode renders components twice that was why n.n
@SilkroadBower
@SilkroadBower 2 жыл бұрын
Aaahhhhh thank you mate I didnt know that!
@Webbi_Trax
@Webbi_Trax 2 жыл бұрын
life saver!!
@muhammadfurqan7799
@muhammadfurqan7799 2 жыл бұрын
thanks!!!!!
@youssefhisham4923
@youssefhisham4923 2 жыл бұрын
how to solve then ?
@datkumar1024
@datkumar1024 2 жыл бұрын
Thanks brotha🤝
@sohamkadam5018
@sohamkadam5018 3 жыл бұрын
Best KZbin channel for beginners as well as intermediate developers.
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Wow, thanks!
@penelopejungreis9355
@penelopejungreis9355 3 жыл бұрын
Thank you so much, I was still confused after your video from last year but this one really cleared that up about the Server class, cors object settings, and the use of the localhosts!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
I'm always trying to improve old videos hahaha i am happy that this one helped :)
@vasukhandelwal2233
@vasukhandelwal2233 2 жыл бұрын
@@PedroTechnologies Can you explain why when you send a message from left pane of google chrome tab why does it only console.log only on right pane when both have joined a room??
@ayushdedhia25
@ayushdedhia25 3 жыл бұрын
Bro really needed this.... 💯🔥❤️
@TheNamesJT
@TheNamesJT 3 жыл бұрын
57:05 i'm getting double scroll bars? Update: Fixed this issue by removing the overflow:scroll on line 85 in the css file. Because the npm package react-scroll-to-bottom already adds the scroll bar.
@LeeanRepzTraining
@LeeanRepzTraining 3 жыл бұрын
BROO the best tutorial of this sooo far lets go!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Glad you think so!
@hyrixlele8959
@hyrixlele8959 2 жыл бұрын
Some people are just meant to be teaching ! clean explanation Thank you
@god2be
@god2be 3 жыл бұрын
it's so easy to explain, I understood right away =) but before that I looked at other chat examples and the guys there couldn't really explain how the websocket works! so thanks!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Great to hear!
@samyf8949
@samyf8949 2 жыл бұрын
This is one of the clearest tutorial i've seen. really love your content and appreciate what you do !
@P.D.V.J
@P.D.V.J 3 жыл бұрын
Amazing tutorial! Was able to get through every step, can't wait to expand on it
@shivamkhandelwal2707
@shivamkhandelwal2707 Жыл бұрын
the way u teach people is tooooo cool for everyone who is beginner.Thanks for ur amazing tutorial
@Asia_life_explorer
@Asia_life_explorer 2 жыл бұрын
Man haven't seen a guy who explains like you, I'm wondering why aren't you having millions of sub?
@thushithamanokaran2040
@thushithamanokaran2040 3 жыл бұрын
This is really awesome.. If you end up making the part two, could you please include saving messages in a database, deploying etc?
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Im thinking that maybe saving in a database would be cool!
@ronaldc8634
@ronaldc8634 3 жыл бұрын
Seconding the deployment part!
@한준규-e1e
@한준규-e1e 3 жыл бұрын
@@PedroTechnologies Hey Pedro, seconding this!! that's gonna be super awesome man
@asthadad9879
@asthadad9879 3 жыл бұрын
@@PedroTechnologies when you are creating second part ?
@volanddevil8015
@volanddevil8015 3 жыл бұрын
@@PedroTechnologies do it please!
@ThColinPereira
@ThColinPereira 3 жыл бұрын
I was thinking of doing a project using socket io and your video shows up! It’s like you read my mind!!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Colin
@cesaralanis4213
@cesaralanis4213 3 жыл бұрын
This is exactly what i was looking for dude!! Yo have some skills to teach, so detailed and easy to understand!! thanks and congrats!!
@Odidi_Bee6ix
@Odidi_Bee6ix Жыл бұрын
Awesome stuff 💯. Anyone planning to watch this in 2023 and above pls use vite to create the client side of the application. It'll save you a lot of hassle
@dxrk81
@dxrk81 Жыл бұрын
this ^
@sohamganmote7998
@sohamganmote7998 Жыл бұрын
Man Your Teaching Skill are on next level i learned more here than my collage
@artimgashi6024
@artimgashi6024 3 жыл бұрын
Man this is a fantastic tutorial, keep doing this !! Also wanted to ask if u can make a video for making chat apps with SignalR, i'm sure you've heard of it.
@michaelmyers717
@michaelmyers717 3 жыл бұрын
God damn Bro! I had a cors problem and tried to fix it literally a week, i'm so thankful to u :*
@aphmaia1
@aphmaia1 2 жыл бұрын
Hi Pedro! Amazing video, I learned a lot from it! Could you make a separate video showing how to use a database with this chat? Hugs from brazil!
@josephchimebuka4143
@josephchimebuka4143 2 жыл бұрын
This guy is crazy how did he do this in 1 hr?... Thanks a lot man you're awesome!
@brunogbrito
@brunogbrito 2 жыл бұрын
Very well done man, um dos melhores tutoriais, super bem explicado! Rolou a parte 2?
@someone9493
@someone9493 3 жыл бұрын
Thanks!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Thank you Yaroslav!
@whatsinaname3837
@whatsinaname3837 3 жыл бұрын
Perfect tutorial. LoL. Thanks, Pedro for remaking videos when these libraries get updated.
@sagarchawla4926
@sagarchawla4926 Жыл бұрын
41:30 i am doing the same way as you did, i am also console logging data ones, but its getting logged twice
@wfgundam
@wfgundam 2 жыл бұрын
thank you! was able to deploy with less of a struggle with CORS. thanks for the updated video!
@marcoberry5541
@marcoberry5541 7 ай бұрын
Please how did you deploy this
@redabekka5940
@redabekka5940 2 жыл бұрын
thanks for tutorial for those who have face problem with message that shows twice the solution is to do a cleanup function to useEffect like this : useEffect(() => { let test = false; socket.on("receive_message", (data) => { if (!test) setMessageList((list) => [...list, data]); }); return () => { test = true; }; }, [socket]);
@Xavier-jf7wd
@Xavier-jf7wd 2 жыл бұрын
Still getting twice the solution
@matrix_prime739
@matrix_prime739 2 жыл бұрын
👍👍👍 thank you very much .I was searching for this kind of any video on youtube and this video really very good explained and one of the clearest tutorial i've seen.
@ilaymorozoff4113
@ilaymorozoff4113 3 жыл бұрын
It is the amazing tutorial, thanks! Your channel is the best!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Wow, thanks!
@shahipapon833
@shahipapon833 2 жыл бұрын
Your 18 mins just blowed me. ❤️ and rest of the sec to sec I was impressing 🥰 impressing ❤️ impressing 😍😍 ad finally boommm,💥💥💥.. I can't express my thought in these few words. Just You will be in my heart ❤️❤️. You unbelievably make socket clear than water ❤️❤️❤️❤️
@PedroTechnologies
@PedroTechnologies 2 жыл бұрын
Hahaha I appreciate it!!
@matthewfisher1874
@matthewfisher1874 Жыл бұрын
great video thank you so much, ive been looking for how to make a react chat app without using external apis, and this video is a perfect
@Switchfusiontech
@Switchfusiontech 2 жыл бұрын
thanks pedro this is lovely, i have alittle challenge with mine, the messages seem to deliver twice and i cant seem to pinpoint where the problem is coming from in the server area
@virgiliolopez3843
@virgiliolopez3843 2 жыл бұрын
Hi. Just wanna share the solution I found after an hour of trying to fix the same issue. The solution is to go to 'index.js' in your client folder (NOT the index.js file in the server folder) and remove just the and line. This is actually a new feature in React 18, which was just released in March 2022, which is why the behavior in the video is different.
@agathahelenafariasmoratogo9614
@agathahelenafariasmoratogo9614 2 жыл бұрын
@@virgiliolopez3843 It worked! Thank you so much!!
@ismael.lastlevel
@ismael.lastlevel 2 жыл бұрын
Wow . I was struggling with the cors issue and now I fixed it. Thanks 👌🏾
@whierthy2608
@whierthy2608 2 жыл бұрын
amazing video ... was struggling to find a short project to learn something new this one really did the work thanks A lot
@josephgitonga3739
@josephgitonga3739 2 жыл бұрын
GREAT GREAT tutorial dude ....you've helped incredibly. Thanks so much
@ayl247
@ayl247 3 жыл бұрын
happily subbed awhile ago. Great vids for refresher and learning!
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Thank You!
@ranabirmandal8733
@ranabirmandal8733 2 жыл бұрын
please help, i'm unable to emit message from socket backend to client. I could console log the data coming from client but server is unable to emit. nothing in the console of browser
@AliAkbar-zv4jv
@AliAkbar-zv4jv 2 жыл бұрын
did you find a sol?
@bbunited_pvp
@bbunited_pvp 3 жыл бұрын
This is certainly what I need. Thank you so much.
@francescoPace27
@francescoPace27 11 ай бұрын
You are the best man! Thank you very much for this amazing tutorial
@pcalozen
@pcalozen 2 жыл бұрын
Very nice Pedro, congrats, helped me a lot . I also didn't know that Hughie from The Boys' super power was coding so well.. kkkk!
@chintalapudirohitmanikanta4492
@chintalapudirohitmanikanta4492 2 жыл бұрын
Can't see output in my brave browser console and getting this error in console Failed to load resource: net::ERR_CONNECTION_REFUSED I'm stuck at 41:00 in the tutorial Can someone help..
@henrykibocha5224
@henrykibocha5224 3 жыл бұрын
Great Tutorial no CORS errors
@prayascsa6601
@prayascsa6601 2 жыл бұрын
I'm on the 100daysofcode challenge and i was feeling super down and didn't feel like coding, I saw this vid while scrolling and decided i'll do this, and I'm ashamed to say that i kinda just copied what you did while watching the video, but I still understood a lot of things so I guess I still did something good
@mohammedmehdi1940
@mohammedmehdi1940 Жыл бұрын
this is the best video for this topic 🛐
@ayushprajapati9486
@ayushprajapati9486 Жыл бұрын
works fine in 2023 .. great vid
@hazelcaling
@hazelcaling 6 ай бұрын
The best!! Thanks Pedro!
@subhajitadhikary-99
@subhajitadhikary-99 4 ай бұрын
The issue with two times showing message on screen is due to react strictmode from version 18. Either you could go to index.js file and remove the wrapper from , but I will not recommend as its given for a purpose to check issues in dev mode. The next thing which is ideal and given in react docs for useEffect hook as well -> which is using return statement with useEffect and inside that, you can write socket.off('event-name', methodName) , which should resolve the issue. Btw, thanks PedroTech for such great content.
@ishikaagrawal262
@ishikaagrawal262 24 күн бұрын
Can you please give the code please what you exactly want to say about useEffect over here..
@ShadyRonin
@ShadyRonin Жыл бұрын
Incredibly helpful, thank you so much Pedro!!!
@ludisinfo1048
@ludisinfo1048 2 жыл бұрын
Thank you very much Pedro !! Excellent Tutorial, very well explained, easy to follow and very useful ... As Thushitha mentioned It would be great to see a second part with database connection (may be Mysql or Mongo) as well as deploying in Heroku perhaps ? ... in any case It was a fantastic video ! Best Regards from Germany ! :)
@yilinliu9687
@yilinliu9687 2 жыл бұрын
For saving data to database, in my point of view, after building and connecting database, you could add a query function under the socket io receive message. For instance, mongoDB, ``` findOneAndUpdate()```it will get it saved to database. Then deploy to Heroku, Heroku has step by step documentation to follow
@victorkipkoech3558
@victorkipkoech3558 2 жыл бұрын
wonderful had a problem with socket now imma do wonders🥳🥳
@ВолодяЛеськів
@ВолодяЛеськів Жыл бұрын
Nice tutorial. Thanks from Ukraine, mate!
@prasanths8960
@prasanths8960 11 ай бұрын
Perfect bro...Like from india...👏👏👏
@maciejromiszewski6954
@maciejromiszewski6954 9 ай бұрын
Dzięki! Tego szukałem!
@uzndev2242
@uzndev2242 3 жыл бұрын
Thank you for this perfect tutorial Pedro!
@110Genesis
@110Genesis 3 жыл бұрын
You are awesome Pedro. Much appreciated
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
I appreciate that!
@Zarinabaloch716
@Zarinabaloch716 3 ай бұрын
Hi pedro! You did a great job!
@akshatbarwal10
@akshatbarwal10 2 жыл бұрын
Hi Pedro, great tutorial! I have a doubt or rather a bug in the code. When I send a message from another user to me, the message is being sent more than once. I did remove the React.StrictMode in the index.js file but it is still showing up multiple times. If anyone can help pls do. Thanks again : )
@bencostas2033
@bencostas2033 2 жыл бұрын
I’m having the same issue, if you find a solution can you let me know
@vivekpaliwar7217
@vivekpaliwar7217 2 жыл бұрын
Did you found any solution for that ?
@georgi1559
@georgi1559 2 жыл бұрын
he is actually getting the same bug in the video and just ignores it like it is not obvious.. idk why he did not fix it, cuz it happened like 3 times
@jayc6535
@jayc6535 2 жыл бұрын
found this on stack overflow: socket.off('recive-message').on("recive-message", (data) => { console.log(data,'recive'); setMessageList((list) => [...list, data]); });
@morphine3016
@morphine3016 2 жыл бұрын
in the useEffect() hook, we have to write the cleanup function below: return () => socket.removeListener('receive_message') It will fix the problem.
@bencostas2033
@bencostas2033 2 жыл бұрын
Hi thank you for the tutorial, I’m getting an issue when receiving messages, it appears twice. I checked the GitHub code and my code looks the same and went through the tutorial once again. Does anyone know how to fix this issue?
@redabekka5940
@redabekka5940 2 жыл бұрын
it's the same problem for me did you fix the problem
@hamad5141
@hamad5141 2 жыл бұрын
Go to index.js, and remove . So you should only see. root.render(); This worked for me :)
@alexzil2142
@alexzil2142 2 жыл бұрын
This is so great. Used this for my react native project. Thanks
@derekspecial1771
@derekspecial1771 Жыл бұрын
Thanks pedro❤
@ShivamGupta-oy8mu
@ShivamGupta-oy8mu 2 жыл бұрын
you have made things very easy to understand. This tutorial is really awesome.
@md.sajedulislam580
@md.sajedulislam580 2 жыл бұрын
Thanks Pedro, this is an amazing tutorial.
@josetuz
@josetuz 3 жыл бұрын
Thank you very much from Argentina!
@KingsleyOkeze
@KingsleyOkeze 2 жыл бұрын
At 18:00 I keep having issues there, it didn't display that a User is connected when I logged to the console, how do I fix it?
@bartoszszmit
@bartoszszmit 2 жыл бұрын
PedroTech, is this course like full chat app course or maybe kind of your free youtube short version? Cause in nerest future I will need node.js full chat app course to learn. Are you?
@chisomeze3884
@chisomeze3884 Жыл бұрын
Pedro thanks so much , you saved my life frr ❤❤❤❤
@yadhukrishnacu3004
@yadhukrishnacu3004 11 ай бұрын
40:10 didn't get the message in client side
@sahil007-d2h
@sahil007-d2h 10 ай бұрын
same problem bro , did you got any solution ?
@yadhukrishnacu3004
@yadhukrishnacu3004 10 ай бұрын
@@sahil007-d2h yeh bro i was just missed to join the id. Just make sure you joined the room or id whatever
@tiny_mystery
@tiny_mystery Жыл бұрын
Great and helpful video bro ! Keep doing that.
@shakilpendhari4525
@shakilpendhari4525 Жыл бұрын
I love this video very nicely explains everything.
@k303k
@k303k Жыл бұрын
Love you bro!!! I've learned so much from your channel
@zude1100
@zude1100 3 жыл бұрын
Thanks, I finally managed to fix the cors issue I faced for over a day.
@Mani-fb3mi
@Mani-fb3mi 2 жыл бұрын
Practical AFFFFFFFF thx pedro
@alexkoval2582
@alexkoval2582 2 жыл бұрын
You explain really clear! Amazing!
@zeeshanlatif8751
@zeeshanlatif8751 Жыл бұрын
It's perfect. Informative and Interesting!
@growthhacking9126
@growthhacking9126 3 жыл бұрын
Pedro my bro thank you for this lovely tutorial, can you please make a tutorial on real time location tracking like delivery apps. Where you can see real time product arrival.
@apeiron4409
@apeiron4409 3 жыл бұрын
love your tutorials always
@aqsaazfa1687
@aqsaazfa1687 3 жыл бұрын
I subscribed this channel at first video cool channel
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Thank you :)
@porlearktuy4711
@porlearktuy4711 3 жыл бұрын
Welp, I was bashing my head against the wall trying to make a chat app like this the other day and caved in to look for help today. Talk about a coincidence.
@PedroTechnologies
@PedroTechnologies 3 жыл бұрын
Hahaha glad you liked the video!
@mansourmalekzadeh8728
@mansourmalekzadeh8728 2 жыл бұрын
Amazing! thanks a lot dear Pedro.
@rawansayed8707
@rawansayed8707 Жыл бұрын
That was really really helpful. i learn alot from you! Thanks!!
@valeriastorozhuk48
@valeriastorozhuk48 2 жыл бұрын
thank you so much for your amazing tutorial! very specific! love it!
@eddymono1724
@eddymono1724 7 ай бұрын
Nice video, It is clear and understandable.....I love this tutorial
@kebabkent5884
@kebabkent5884 2 жыл бұрын
If I wanted to make my own website that anyone could access with this as the base code, how would I go about doing that? Ive tried with firebase but I just cant make any sense out of it. Please help!
@nataliamikhieieva8131
@nataliamikhieieva8131 Жыл бұрын
Thank you Pedro !! very cool !
@JaiVang-b4q
@JaiVang-b4q 11 ай бұрын
What extensions are you using to automatically space, add semicolons, and change ' to "?
@nidhishettigar6981
@nidhishettigar6981 2 жыл бұрын
WARNING in src\App.js Line 4:7: 'socket' is assigned a value but never used no-unused-vars I am getting this warning at 17:49 from video and not able to connect to server. Please help.
@quintonpangyixuan3990
@quintonpangyixuan3990 2 жыл бұрын
Check and see if this works for you?kzbin.info/www/bejne/jqe0mJaPZ9SNq8k
@_dikay
@_dikay 2 жыл бұрын
glad i found this video👍
@VladBatalin
@VladBatalin Жыл бұрын
hey thenks for perfect lesson! keep it up the good work!
@nhatminh452
@nhatminh452 11 күн бұрын
i love this
@ShubhamPatil-rr4on
@ShubhamPatil-rr4on 3 жыл бұрын
This is amezing ♥️♥️♥️♥️
@sarthaksingh9183
@sarthaksingh9183 2 жыл бұрын
thanks brother you made my day
@ruizhu5899
@ruizhu5899 2 жыл бұрын
it's very amazing video thank you, and can i know if you solve the small bug in the end, that the user will rerender 3 times after we used controll element for clearing value after emite event, thank you
@nurhamsah_tech
@nurhamsah_tech Жыл бұрын
thanks bro, you r always be my favorite 💯💯
@misfitgems
@misfitgems 3 жыл бұрын
This is dope bro!
@arysetansy4966
@arysetansy4966 2 жыл бұрын
Oh Pedro, meu querido, cade a parte de desconectar? Especificamente um usuario...?
Socket.io + ReactJS Tutorial | Learn Socket.io For Beginners
32:35
Enceinte et en Bazard: Les Chroniques du Nettoyage ! 🚽✨
00:21
Two More French
Рет қаралды 42 МЛН
VIP ACCESS
00:47
Natan por Aí
Рет қаралды 30 МЛН
MERN Stack Project: Realtime Chat App Tutorial - React.js & Socket.io
4:36:36
Want to make a chat app? Get Real-time With WebSockets & Socket.io!
1:31:40
Good Morning Developers
Рет қаралды 20 М.
I built a chat app in 7 minutes with React & Firebase
8:53
Fireship
Рет қаралды 1,4 МЛН
Learn Socket.io In 30 Minutes
27:27
Web Dev Simplified
Рет қаралды 522 М.
I Coded 10,000+ React Components, Here is What I Learned...
9:57
Build a Real Time Chat App With Node.js And Socket.io
17:12
Web Dev Simplified
Рет қаралды 560 М.
Анимация логотипа для компании MYCOM
0:46
FreelStep Shorts
Рет қаралды 2 МЛН
🤡Главная ПРОБЛЕМА Айфона🍏
0:39
Demin's Lounge
Рет қаралды 639 М.
Los abanicos holográficos están a punto de revolucionar el negocio
0:23
The damaged battery headisrepaired. #Battery #Repair
0:34
Hak Hang
Рет қаралды 15 МЛН