Пікірлер
@frontendwithwind
@frontendwithwind 6 сағат бұрын
năm cuối là mình đã đi làm
@buitoantu9513
@buitoantu9513 Күн бұрын
kênh này làm clip chuẩn chỉnh và flow tốt.
@_ILunar
@_ILunar 2 күн бұрын
những video dài như này rất hữu ích
@blasst4481
@blasst4481 2 күн бұрын
bài này rất lòng vòng gây sự khó hiểu
@DukeLe35
@DukeLe35 3 күн бұрын
xin qua 🎉
@chaucong8095
@chaucong8095 3 күн бұрын
tại sao lúc em POST thì id lại ra số ngẫu nhiên chứ không ra thep thứ tự như anh ạ
@ducdominh9390
@ducdominh9390 4 күн бұрын
Cập nhật 14/10/2024 thôi anh em bỏ cm cái thư viện này đi là vừa, dùng làm gì cho nóng máu, 11 năm build nhưng dùng như nịt, thà tự cập nhật document cho nhanh chứ thư viện này bỏ thùng rác là vừa :(((((
@ducdominh9390
@ducdominh9390 4 күн бұрын
Dùng cái thư viện này toàn gây lỗi ác, họ còn chưa làm tới đâu cả :(( vote ko dùng thư viện này
@haitrinhnroonline
@haitrinhnroonline 5 күн бұрын
chỉ 1 dòng bạn có thể hiểu : useEffect : ko dùng để lấy kết quả khi desp thay đổi, useMemo: dùng để lấy kết quả khi desp thay đổi
@anhquangtran8033
@anhquangtran8033 5 күн бұрын
hay
@VanPham-t7q
@VanPham-t7q 5 күн бұрын
Dùng ChatGPT giải thích cho dễ hiểu nè Explain the difference between (--var) and (var--) to a 10 year old child. Include 2 examples: Let's imagine you have a jar of cookies. The number of cookies in the jar is like a variable in programming. --var (decrement before): This is like taking a cookie out of the jar before you count how many are left. Example: You have 5 cookies. Your mom says, "Give me one cookie, then tell me how many are left." You take out 1 cookie (--), then count. You say, "There are 4 cookies left." var-- (decrement after): This is like counting the cookies first, then taking one out of the jar. Example: You have 5 cookies. Your mom says, "Tell me how many cookies there are, then give me one." You count 5 cookies, tell her "There are 5 cookies," then take out 1 cookie (--) The main difference is when the cookie is removed - before or after you count.
@giahunghoang2434
@giahunghoang2434 6 күн бұрын
mình cảm thấy ở đây giảng dễ hiểu hơn mấy trung tâm aptech đang giảng , lêm học 100% ko bao giờ hiểu dc tiền đi rồi mới thấy trân trọng
@Vu205-r3r
@Vu205-r3r 6 күн бұрын
bạn nào bị lỗi id nó random thì còn cách là khi create, thêm cả trường id vào nhé index.html thêm thẻ div id <div> <label>ID</label> <input type="number" name="id"> </div> index.js thêm id vào renderCourses và handleFormCreate functions function renderCourses(courses){ var courseList = document.querySelector('#courses-list'); var htmls = courses.map((course)=>{ return ` <li> <h4>${course.name}</h4> <p>${course.description}</p> <p>${course.id}</p> <button onclick= "handleDeleteCourse(${course.id})" >Delete</button> </li> `; }) courseList.innerHTML = htmls.join(''); } function handleFormCreate(){ var createBtn = document.querySelector('#create') createBtn.onclick = function(){ var name = document.querySelector('input[name = "name"]').value; var description = document.querySelector('input[name="description"]').value; var id = document.querySelector('input[name="id"]').value; var formData = { name: name, description: description, id:id, } createCourse(formData, function(){ getCourses(renderCourses); }) }; }
@VanPham-t7q
@VanPham-t7q 6 күн бұрын
Bạn giải thích dễ hiểu ghê. Biết ơn bạn rất nhiều đã dành thời gian hướng dẫn thật sự cụ thể và theo từng bước dễ làm như thế này. Công đức vô lượng! Mình chúc bạn và gia đình thật nhiều may mắn và sức khoẻ nhé
@CH-yd3xw
@CH-yd3xw 6 күн бұрын
mình làm BE 4 năm rồi giờ muốn theo FullStack giờ nhìn vô ôn lại bài của bạn, tóm tắt lại hay phết, cảm ơn bạn nha.
@Engineer-de8ps
@Engineer-de8ps 6 күн бұрын
Khi nào có khóa React bác ơi?
@data-dynamo-guy
@data-dynamo-guy 6 күн бұрын
Cám ơn anh
@duybachsnguyen1443
@duybachsnguyen1443 6 күн бұрын
Quá nhiều thứ hay ho trong một video cảm ơn anh sơn rất nhiều ạ
@hoandihoc
@hoandihoc 7 күн бұрын
cảm ơn F8 rất nhiều
@data-dynamo-guy
@data-dynamo-guy 8 күн бұрын
❤ thanks anh
@pqthanh
@pqthanh 8 күн бұрын
cảm ơn a
@HoaThuy-r1x
@HoaThuy-r1x 8 күн бұрын
Tuyệt với ❤
@Adam_Duy
@Adam_Duy 8 күн бұрын
mình càng thêm text vào thì li nó càng nở rộng ra, làm cho chiều cao giữa các li không đồng đều, vậy mình giải quyết thế nào vậy ạ?
@nobitakool
@nobitakool 9 күн бұрын
Thầy Sơn là người dạy có tâm nhất tôi từng được học! Sau khi hoàn thành khoá HTML CSS pro tôi sẽ tiếp tục học Javascript pro. Học trên F8 Fullstack chỉ cần học chăm chỉ thì ai cũng chắc chắn sẽ làm được.
@kevindangg
@kevindangg 9 күн бұрын
Các bài tiếp theo là sử dụng React 17 hả anh, tại tạo thư viện xg nó sử dụng React 18 thì lm sao a. Mong anh rep bình luận ạ!
@F8VNOfficial
@F8VNOfficial 8 күн бұрын
Ko sao đâu em, em xem 17, 18 nó khác gì nhau thì lưu ý ở điểm khác thôi. Còn thay đổi một phiên bản thường là bổ sung thêm chứ ít khi thay đổi nhiều em nhé. Kiến thức đã học để làm việc với React 99% vẫn sử dụng được nha.
@F8VNOfficial
@F8VNOfficial 8 күн бұрын
Còn em cài nó 18 luôn thì khi cài n lấy bản mới nhất. Không sao hết em nhé, em code đúng không báo lỗi gì ở thư viện là ok.
@vankhai4299
@vankhai4299 9 күн бұрын
A ơi , cho e hỏi , API chỉ là phương thức để FE gửi yêu cầu đến BE thôi , vậy trong khoá này a có cung cấp sẵn backend không ạ , chứ e vẫn chưa hiểu lắm về việc có API rồi React gọi APi để trao đổi vs đối tượng nào ?
@phatnguyen6721
@phatnguyen6721 9 күн бұрын
Mua khoá font-end của bạn khá hay. Hồi đó chỉ có html với css thôi, giờ mới có JavaScript. Mình cũng đã build xong dự án chạy back end bằng express học trên udemy nhưng có những phần không được dạy kỹ lắm. Mình cũng bỏ ra 2 tháng để xây dựng một web bán hàng. Chúc f8 luôn ngày càng phát triển, sẽ ủng hộ thêm nhiều sản phẩm của f8 trong tương lai. Nhờ f8 mà mình mới biết đến nghành lập trình web, trước đây cũng ko giám học :').
@truonggiangtranthanh6845
@truonggiangtranthanh6845 9 күн бұрын
thực sự là cả 2 đều có trình tự giống nhau. Chỉ là ở LayoutEffect dùng: Render>Cleanup > Callback Effect nhanh hơn 1 chút nên k nhận ra: // function Count() { // const [count, setcount] = useState(0) // console.log(`Run function tai ${count}`) // const handlClick = () => { // console.log(`Click tai ${count}`) // setcount(count + 1)} // useLayoutEffect(() => { // console.log(`Effect Callback tai ${count}`) // count > 3 && setcount(0) // return () => console.log(`Cleanup Effect tai ${count}`) // },[count]) // console.log(`Render tai ${count}`) // return( // <div> // <h1>{console.log(`Noi dung hien thi tai ${count}`)}{count}</h1> // <button onClick={handlClick}>Click</button> // </div> // ) // } Kết quả: (bắt đầu từ lần click để đưa từ số 1 lên 2) Click tai 1 Run function tai 2 Render tai 2 Noi dung hien thi tai 2 Cleanup Effect tai 1 Effect Callback tai 2 Thứ tự kết quả trên giống nhau ở cả 2 loại Effect. Chỉ là Layout được chỉnh tốc độ lên 1 chút tức là sync, nhưng vẫn giữ nguyên thứ tự thực hiện ở 3 console.log cuối.
@bangunny
@bangunny 10 күн бұрын
anh trai nghijch fastify chưa
@haruto2804
@haruto2804 10 күн бұрын
trong lớp em học C++ là học các hàm fopen, fscanf, fgets, nhưng muốn dùng các hàm này là phải tạo con trỏ mang kiểu FILE, mình nên dùng các hàm này hay cách của anh trong clip?
@thhtmqtv515
@thhtmqtv515 9 күн бұрын
tùy theo bài mà chọn cách làm phù hợp thôi bạn
@ManNhi_tl
@ManNhi_tl 10 күн бұрын
hmm
@ManNhi_tl
@ManNhi_tl 10 күн бұрын
1:05 loại function loại 1 1:20 function loại 2 5:05 hosting gọi function trước khi tạo
@-phamphuc11toan14
@-phamphuc11toan14 11 күн бұрын
position: absolute sẽ lấy thẻ cha gần nhất có thuộc tính position làm gốc tọa độ để có thể tự do di chuyển trong lớp cha đó
@ManNhi_tl
@ManNhi_tl 12 күн бұрын
các lỗi
@ManNhi_tl
@ManNhi_tl 12 күн бұрын
2:40 xem
@ManNhi_tl
@ManNhi_tl 12 күн бұрын
2:00 tạo biến trong hàm 5:00 truyền 2 tham số vào hàm 10:15 xem arguments
@ManNhi_tl
@ManNhi_tl 12 күн бұрын
tạo và gọi hàm thôi 6:00
@girl_toptop
@girl_toptop 12 күн бұрын
anh ơi cho cho em hỏi ở phần sản phẩm. nếu muốn cho chiều dọc khoảng 8 sản phẩm thì sẽ chuyển sang trang khác thì phải làm sao ạ
@ManNhi_tl
@ManNhi_tl 12 күн бұрын
Join 1:50 xem để hiểu pop() xóa phtu cuối mảng và trả về phtu đã xóa push(, , ) thêm phtu cuối mảng và in ra độ dài mảng shift() xóa phtu đầu mảng và trả về phtu đã xóa unshift() thêm phtu đầu mảng và in ra độ dài mảng splice(1, 2, ' html ') có 3 tham số + tham số 1 là vị trí bắt đầu của mảng +tham số 2 là xóa phtu nếu muốn +tham số 3 là thêm phtu vào mảng concat() hợp mảng lại 14:35 slice(1, 2) cắt mảng đến tham số 2 thì dừng lại
@vythevy
@vythevy 12 күн бұрын
update : bạn nào bị lỗi chỗ handlebars cụ thể Error : The partial header could not be found , thì xoá chỗ app.engine ( chỗ đăng ký name hbs) dán dòng này vào nhé : app.engine('hbs',handlebars.engine({extname : '.hbs', partialsDir: path.join(__dirname, 'resources','views', 'partials')})).
@DucToan2k6
@DucToan2k6 12 күн бұрын
Tải node js để chạy cx đc pk ko ạ
@KienNguyen-cl3ei
@KienNguyen-cl3ei 12 күн бұрын
Mn cho em hỏi, sao máy em vào localhost thì được mà lúc vào 127.0.0.1 hay domain tự tạo trong file hosts lại không được (trừ lúc chạy xampp, nhưng cũng chỉ vào đc port của phpmyadmin thôi)
@Kedayvietsub69
@Kedayvietsub69 14 күн бұрын
em làm như anh mà khi em dùng ip của mạng viettel thì nó vẫn ra cái trang đăng nhập của viettel anh ạ
@nhutranquang1687
@nhutranquang1687 14 күн бұрын
cho e hỏi link web mẫu ở đâu vậy a
@eddynguyen876
@eddynguyen876 15 күн бұрын
cảm ơn facebook :)))
@daovansangbtechn3697
@daovansangbtechn3697 15 күн бұрын
hóng phần tiếp anh ơi
@mark28103
@mark28103 15 күн бұрын
b nào dùng findDeleted() không hoạt động thì có thể dùng Course.findWithDeleted({ deleted: true }) thay thế nha
@leehoan4760
@leehoan4760 16 күн бұрын
tôi nhớ có link tải mà giờ k thấy nhỉ
@minho9031
@minho9031 16 күн бұрын
Anh ơi a cho e hỏi nếu học PHP và MySQL trên máy mac thì dùng phần mềm hay cài môi trường sever bằng gì ạ
@F8VNOfficial
@F8VNOfficial 16 күн бұрын
Nếu muốn đơn giản thì em cài XAMPP là xong nhé
@anbui6997
@anbui6997 17 күн бұрын
Mới gặp anh này hôm trước ở ngõ 41 trần duy hưng xong 😅