Lập trình ứng dụng nhắn tin Real-Time bằng ReactJS, Firebase (2021)
HTML-код
- Опубликовано: 2 окт 2024
- 👉 Tìm hiểu khoá học React Pro: academy.holete...
Lập trình ứng dụng nhắn tin Real-Time bằng ReactJS, Firebase (2021)
Trong video này chúng ta sẽ được học cách để xây dựng UI bằng ReactJS và Ant Design. Chúng ta sẽ được học cách để sử dụng Context API để
quản lý state mà không cần sử dụng tới Redux. Cùng với đó, chúng ta cũng được học cách sử dụng một số tính năng hữu ích của
Firebase như Authentication và Firestore.
Live Demo: chatapp.holete...
👉 Tính năng
Đăng nhập bằng Google/Facebook
Quản lý các phòng chat
Thêm thành viên vào phòng chat
Hiển thị danh sách thành viên trong phòng chat
Nhắn tin
👉 Kiến thức trong video
Context API
React Hooks
Ant Design
Styled Components
Firebase Authentication
Firebase Firestore
👉 Link tham khảo:
ES6: • Học ES6 JavaScript cho...
React Hooks Series: • React Hooks
ReactJS Cơ bản 30 phút: • Học React JS cơ bản tr...
Flexbox CSS: • Flexbox CSS trong 15 p...
Firebase: firebase.googl...
Ant Design: ant.design/doc...
Styled Component: styled-compone...
Source code: github.com/hol...
💻 Thông số PC & Gears của mình (Affiliate Links):
Máy ảnh Canon EOS M50 + Kit 15-45mm - shorten.asia/b... (TIKI)
Microphones Elgato Microphone Wave 3 - shorten.asia/j... (TIKI)
Micro Rode Videomic Goshorten.asia/w... (TIKI)
Màn hình Dell S2421HN 23.8Inch IPS - shorten.asia/7... (TIKI)
Màn hình MSI OPTIX G27C4 27 VA 165Hz - shorten.asia/w... (TIKI)
Tai Nghe Gaming SteelSeries Arctis 7 DTS.X 7.1 - shorten.asia/E... (TIKI)
Chuột SteelSeries Rival 310 - shorten.asia/A... (TIKI)
Ổ cứng HDD Western Digital BLUE 6TB - shorten.asia/Q... (TIKI)
CPU Intel Core i5-10400 - shorten.asia/y... (TIKI)
Ram ADATA DDR4 XPG GAMMIX D10 8GB 3200MHz - shorten.asia/2... (TIKI)
Mainboard ASRock B460M - shorten.asia/G... (TIKI)
📢 Liên hệ với mình tại:
Facebook: /
Instagram: / holetex
Github: github.com/hol...
Facebook cá nhân: / minhtung09
Email: holetex@outlook.com
#holetex #reactjs #frontend
#1 Phần install bị che mất các bạn có thể copy dòng lệnh này
npm install --save antd @ant-design/icons date-fns firebase lodash react-router-dom styled-components
#2 Mình thấy nhiều bạn bị lỗi tương tự như này khi đăng nhập bằng facebook từ localhost
"Facebook đã phát hiện chat-app không sử dụng kết nối bảo mật để truyền thông tin.
Chỉ khi nào chat-app cập nhật cài đặt bảo mật thì bạn mới có thể đăng nhập vào ứng dụng này qua Facebook."
Nguyên nhân: Do localhost không có ssl nên Facebook cảnh báo là kết nối không bảo mật
Cách khắc phục: Các bạn thêm ssl cho localhost theo hướng dẫn ở đây:
B1. Cài đặt mkcert tool
Tham khảo link mkcert (github.com/FiloSottile/mkcert) để cài đặt cho từng hệ điều hành
Trên Windows, sử dụng Chocolatey (chocolatey.org/)
choco install mkcert
B2. Thiết lập mkcert trên máy tính của bạn (Tạo một CA)
mkcert -install
B3. Vào thư mục gốc của dự án, tạo thư mục .cert nếu chưa có
mkdir -p .cert
B4. Tạo một certificate (chạy từ thư mục root của dự án)
mkcert -key-file ./.cert/key.pem -cert-file ./.cert/cert.pem "localhost"
B5. Cập nhật lại start script trong package.json thành
"start": "set HTTPS=true&&set SSL_CRT_FILE=./.cert/cert.pem SSL_KEY_FILE=./.cert/key.pem&&react-scripts start"
B6. Chạy lệnh npm run start để mở localhost.
Chúc các bạn học tốt!
Dạ em làm theo anh thêm localhost vào miền ứng dụng nhưng mỗi lần refresh là nó lại mất và chỗ miền ứng dụng lại về rỗng ak. Với cái của em nó chỉ có Phát triển với chính thức không có đang phát triển giống của anh ạ :((
cũng bị lỗi "Facebook đã phát hiện chat-app không sử dụng kết nối bảo mật để truyền thông tin. ạ, có ai fix dc chưa mn
Ko dc anh ơii, em thử rồi
dạ không lưu được anh, bắt nhập thêm URL chính sách quyền riêng tư và URL Xóa dữ liệu người dùng, vẫn chưa fix được nơi anh.
@Lập Trần Văn Bạn để localhost chạy https là được. Nó đang yêu cầu phải https :D
2 mins in, mình đã like và sub. Khá bất ngờ vì có kênh dev tiếng Việt chất lượng như vầy. App đẹp, hướng dẫn rõ ràng, dễ nghe, nhịp độ vừa phải. Mình cũng là dev và cũng từng nung nấu ý định dạy học RUclips, nhưng đến setup ghi hình và làm code tut thôi cũng là cả 1 vấn đề. Người chỉ xem thì không cảm nhận được hết công sức quay, dựng, edit để ra được 1 tut như này. Bạn chọn React để dạy là quá chuẩn nhu cầu thị trường rồi. Chúc bạn duy trì được phong độ nhé!
Cảm ơn bạn nhiều
bạn nào cho mình xin dòng lệnh install ở terminal với ạ
cho anh em nào đang dùng router v6 thì
thay useHistory= useNavigate ;
thay history.push("/")= navigate("/");
thay switch =Routes
Bạn có code bản firebase v9 ko cho mình xin source với
./src/firebase/config.js
Attempted import error: 'firebase/app' does not contain a default export (imported as 'firebase').
buồn quá mn người giúp tôi với .tôi làm đến đoạn 13p!!! hu hu
Update cho mấy bạn nếu firebase lên bảng 9. import firebase from "firebase/compat/app";
import "firebase/compat/auth";
import "firebase/compat/firestore";
import "firebase/compat/analytics";
Mình sửa như thế thì UI không hiển thị nữa
cảm ơn bạn
@Phuc Ngo Tan bạn update phiên bản node xuống như video là chạy được nhé
@phucngotan9839 import firebase from 'firebase/compat/app';
import 'firebase/compat/analytics';
import 'firebase/compat/auth';
import 'firebase/compat/firestore';
3:43 Chú có thể cho cháu cái phần mà chú viết trong terminal được ko ạ? Vì cháu ko nhìn thấy cái chỗ góc bên phải (cháu ko nhìn thấy bởi vì camera của chú che đi rồi ạ)! Mong chú rep cháu
đây cháu nhé
npm install --save antd @ant-design/icons date-fns firebase lodash react-router-dom styled-components
@@holetex Dạ con cảm ơn chú nhiều lắm ạ!
Khi số lượng tin nhắn lên hàng nghìn thì phải sử dụng tính năng phân trang onScroll Infinite và không thể để onSnapshot tải về hàng nghìn dữ liệu cùng lúc được mà phải tải từng khúc một, bạn có thể chia sẻ thêm về tính năng này không?? Xin cám ơn
Cho em hỏi là hiện tại FB có vẻ block kiểu đăng nhập như vậy rồi và hình như bắt phải xác thực doanh nghiệp gì đó thì giờ mình phải làm sao ạ.
Chú cho cháu hỏi là làm sao để chạy được cái file như chú thế ạ? Mong chú rep cháu
Em thấy anh nên chia nhỏ thành nhiều các phần, mỗi phần là 1 video thì hay hơn. Em thấy xem 1 video hướng dẫn 2h ntn hơi nản ạ , nhiều thứ phải học quá @@
mọi người ơi cho em hỏi là cái đoạn install mấy cái thư viện ( 3:45 ) bị che mất viết như nào với ạ
@10:57 cần thêm từ khóa new vào trước `firebase.auth.FacebookAuthProvider();` , nếu không sẽ gặp lỗi: signInWithPopup failed: First argument "authProvider" must be a valid Auth provider
e làm tới chỗ login fb mà nó is loading lâu quss hong nhận dc luôn :"""
lúc em deploy thì auth facebook nó không hoạt động anh ạ
1:56:50 em code y như anh nhưng nó không hiện tên người dùng khác ra ạ :((
Dạ em chào anh, em mới là beginner thôi nên ở 3p30s em thấy anh có add thư viện thì phải nhưng không xem được anh gõ gì ý ạ, nếu anh không phiền mong anh chỉ lại giúp em với ạ, em cảm ơn anh rất nhiều.
mới có 1 năm mà mấy libary firebase, react-router-dom,... update rồi thay hàng loạt function. chạy theo thư viện, framework cũng căng thật
lúc em lấy danh sách room từ firebase sau khi người dùng đăng nhập để render ra thì bị lỗi
ERROR [2024-08-28T07:03:25.520Z] @firebase/firestore: Firestore (9.9.3): Uncaught Error in snapshot listener: {"code":"failed-precondition","name":"FirebaseError"}
và nó không hiển thị room, sau khi reload lại thì nó mới hiển thị danh sách room😭anh cứu em với
ở 1:36:25
{selectedRoom.name}
{selectedRoom.description}
trong console.log ở devtool báo lỗi "Cannot read properties of undefined (reading 'name')" ai biết fix lỗi này ko ạ.
ban them thử dấu ? trước dấu . của name xem dc k á => selectedRoom?.name
ở 3:28 em thấy terminal bị che hết code cài đặt thư viện. Như vậy người mới họ học sẽ rất khó biết viết cái gì để cài đặt a nhé
./src/firebase/Config.js
Attempted import error: 'firebase/app' does not contain a default export (imported as 'firebase'). anh ơi lỗi này sao export ra không đc ạ , giúp em với :((
mình search thì do là firebase hiện tại update lên v9. cách fix là:
1. yarn remove firebase
2. yarn add firebase@8.10.0
3. yarn cache clean
bạn thử xem đc k
Lỗi này là soa vậy mn:
config.js:18 Uncaught TypeError: firebase_compat_app__WEBPACK_IMPORTED_MODULE_0__.default.getAnalytics is not a function
mọi người ơi em firebase emulators:start trên terminal và trên git bash đều bị lỗi: Error: Could not spawn `java -version`. Please make sure Java is installed and on your system PATH. mọi người giúp em với ạ em xin cảm ơn rất nhiều
npm install --save antd @ant-design/icons ... tiếp theo là gì ? mình bị cái hình của bồ che không nhìn thấy. ở phút thứ 3
Đây bạn npm install --save antd @ant-design/icons date-fns firebase lodash react-router-dom styled-components
Hiện tại cái đăng nhập bằng facebook nó không hoạt động được, anh có thể làm thêm video về đăng nhập facebook được không ạ
Có ai giống mình không import {Row, Col,Title} from 'antd'
nhưng bị mỗi 'Title' is declared but its value is never read
17:53 anh ơi cho em hỏi, như trong video của anh đang là router dom v5 nhưng giờ đã lên v6 có vài chỗ khác với bản cũ, em có code theo và đã tra cú pháp theo đúng v6 nhưng vẫn cứ bị báo lỗi là: Cannot read properties of null (reading 'useRef') ạ :((( em ngồi tìm cách sửa từ sáng tới giờ mà chưa được, mong a giải đáp thắc mắc ạ. Em cảm ơn anh nhiều ạ
a ơi cho e hỏi xíu những project a làm có giống trong thực tế khi đi làm không ạ @@
Bạn có thể cho xin lại dòng lệnh khi cài đặt TEMINAL được không?
Xin cảm ơn!
em thấy không ai hỏi về tối đa lượng truy cập trong 1 khoảng thời gian á , anh cho em hỏi là làm sao để biết được tối đa lượng truy cập để tiện lợi trong việc sử dụng không ạ
Chào anh, anh cho em hỏi là ở phần useFirestore khi thực hiện thêm :
collectionRef = collectionRef.where(
condition.fieldName,
condition.operator,
condition.compareValue
);
khi mình thực hiện dưới localhost của emulators thì câu lệnh được áp dụng nhưng khi em đổi sang firebase trên web thì nó thông báo lỗi như sau: index.js:1 Uncaught Error in snapshot listener: FirebaseError: The query requires an index. You can create it here: console.firebase.google.com/v1/r/project/real-time-f6e3e/firestore/indexes?create_composite=Ck1wcm9qZWN0cy9yZWFsLXRpbWUtZjZlM2UvZGF0YWJhc2VzLyhkZWZhdWx0KS9jb2xsZWN0aW9uR3JvdXBzL3Jvb21zL2luZGV4ZXMvXxABGgsKB21lbWJlcnMYARoNCgljcmVhdGVkQXQQARoMCghfX25hbWVfXxAB
at new n (prebuilt-038c95ef-26ab9a06.js:188)
at prebuilt-038c95ef-26ab9a06.js:10420
at prebuilt-038c95ef-26ab9a06.js:10421
at n.onMessage (prebuilt-038c95ef-26ab9a06.js:10443)
at prebuilt-038c95ef-26ab9a06.js:10360
at prebuilt-038c95ef-26ab9a06.js:10391
at prebuilt-038c95ef-26ab9a06.js:15184
Anh giải thích giúp em với ạ !
Khi kết nối thực tế thì em cần tạo index cho firestore. Em làm theo hướng dẫn ngay trong câu lỗi kìa, nhấn vô rồi làm theo hướng dẫn của firebase là được nha em. Em sẽ cần phải tạo index một vài lần. Nó cứ báo lỗi như vậy thì em cứ nhấn vô link và làm theo hướng dẫn là đc
cũng bị lỗi giống bạn @@ k biets bạn fix được chưa nhỉ
@@kinhbach8795 bác fix đc chưa ạ
mình xin góp thêm ý kiến như sau:
- phần into lên có hình mô tả.bạn có thể vẽ flow cơ bản của dự án(mình nghĩ k phức tạp) để ng xem hình dung ra được trong video sẽ có những nội dung gì + và các chức năng cơ bản của ứng dụng
đây là góp ý chân thành của mình. chúc bạn và kênh đạt được nhiều thành công hơn
Cảm ơn góp ý của bạn ❤️
Hay lắm. A cho e hỏi là file JS có thông tin cấu hình firebase. Trên trình duyệt web bị nhìn thấy có ảnh hưởng đến bảo mật ko ạ.
Đối với Firebase thì không sao em nhé
minh bi loi nay la bi gi vay mn:
Module not found: Error: Can't resolve 'antd' in 'C:\Users\Admin
eactjs\app-chat\src\components\Login'
đoạn xác thực facebook hình như bây giờ mình cần phải xác minh doanh nghiệp nữa mới đc đúng ko a
anh cho em hỏi là khi em import firebase vào file Login thì UI đẩy ra 1 màn hình trống, em đã install firebase 8.10.0 rồi nhưng vẫn bị như vậy. đây là lỗi gì và sửa như thế nào ạ
Anh ơi khi em làm đến ấn đăng xuất thì nó không tự tải lại trang mà path thì vẫn đổi thì fix như nào ạ
Hi mọi người...có cách nào để lưu lại dữ liệu trên emulators không mọi người..mỗi lầ làm mà mở lại là data bị mất hết
Ai bị lỗi này Attempted import error: 'firebase/app' does not contain a default export (imported as 'firebase') thử cách này xem nha. Hình như do firebase hiện tại là phiên bản mới. Vào terminal làm lần lượt để cài lại bản cũ:
1. yarn remove firebase
2. yarn add firebase@8.10.0
3. yarn cache clean
chỉ mình cách khắc phục firebase đc ko ạ
đúng rồi , xung đột vì đổi cú pháp firebase 8 và firebase 9 =)))
trình viết câu lệnh cài đặt của anh thôi cũng thấy cao siêu rồi dài dằng dặc hehe
anh nen giải thích nhiều hơn , ví dụ như cái đoạn signinwithpopup anh chưa nói tại sao và nó để làm gì công dụng nó ntn , nên làm em nghe như vịt nghe sấm
Chỗ Context viết vậy thì khi em viết một trang khác nữa thì không chuyển hướng sang trang đó được, nó vẫn về trang chủ. làm sao đây anh ?
npm install --save antd @ant-design/icons date-fns firebase lodash react-router-dom styled-components
có mấy đoạn cái console.log bị cái avatar che đi ạ, nếu mình cho cái avatart bo tròn lại có khi vừa đẹp vừa không bị che mất mấy chỗ đó ạ
Phiên bản mới của firebase khác quá, mò mệt mõi mà vẫn chưa dùng được realtimedb
Video này anh đã x1,25 rồi thì phải , e thấy khá là nhanh
npm install --save antd @ant-design/icons date-fns firebase lodash react-router-dom styled-components
Ai còn xem video này , thì firebase đã thay đổi đường dẫn file .
Anh ơi cho em hỏi với ạ. Em code và chạy local ok hết rồi. Em muốn đẩy lên heroku thì fix emulators như nào ạ. Em chạy trên heroku thì báo lỗi đường dẫn localhost:9099
ai biết fix lỗi này không: Error: emulator is not a Firebase command
anh ơi e lỗi phiên bản thế này, giờ lms để cho nó working đc đây ạ?
ko hiểu sao e thấy video này hay nhưng e bị ngu react nên ko hiểu lắm😂
AE nào mà login với FB mà ko hiện icon nick mình thì nhớ chuyển từ Development Mod sang Live Mod nha 🍔
anh cho em hỏi khi nào sử dụng firebase và khi nào dùng nodejs tùy vào dự án hay sao ạ
Firebase em hình dung nó là một dịch vụ cung cấp sẵn hạ tầng phần backend cho em giúp em tăng tốc việc làm ra 1 ứng dụng hoàn chỉnh còn nodejs là em tự build phần backend em nhé
Em bị lỗi phần tìm và thêm bạn anh có thể giúp em được không ạ em cảm ơn
mới học react xem 20 phút thấy ngáo luôn
bạn nào cho mình xin dòng lệnh install ở terminal với ạ
Nếu ai chạy ch được, áp dụng cách của bạn Tuan Nguyen nhé, trong terminal khi chạy code, thay vì npm start, sd lệnh này HTTPS=true npm start
mong anh ra 1 video kết hợp mongodb node react(nhiều router) xử lý jwt + làm mới token kết hợp với phân quyền router cho admin
mọi người cho mình hỏi làm sao để deploy app này lên internet ạ
a ơi !, a có thể hướng dẫn làm Notification push up vơi FCM được không anh?
em làm giống i chan anh cái phần đăng nhập fb nó bị lỗi file config ERROR in ./src/components/firebase/config.js 15:0-22
export 'default' (imported as 'firebase') was not found in 'firebase/app' (possible exports: FirebaseError, SDK_VERSION, _DEFAULT_ENTRY_NAME, _addComponent, _addOrOverwriteComponent, _apps, _clearComponents, _components, _getProvider, _registerComponent, _removeServiceInstance, deleteApp, getApp, getApps, initializeApp, onLog, registerVersion, setLogLevel)
làm ntn để fix đc ạ? em cảm ơn
chắc firebase của b cài lỗi thử dùng cdn của firebase xem sửa được không
hay quá anh, đang định làm project để tổng kết kiến thức
Dù mình chỉ học tech sơ nhưng mình vẫn hiểu được logic và toàn bộ quá trình phát triển. Cám ơn bạn.
Cám ơn anh nhiềd
Dạ a cho e hỏi, e thấy Live Demo của a có thể login facebook hoặc google bằng nhiều account khác nhau, nhưng trong video a chỉ thì chỉ login đc vs account nào có add appID của fb hay google vậy ạ. Vì e cũng muốn tìm hiểu phương thức login vs nhìu user mà ko cần đăng ký developer của fb như Live Demo của a ạ. Mong nhận được phản hồi từ anh.!!!
anh ơi cái này có chạy được expo trên điện thoại không ạ
anh cho em xin đoạn thêm thư viện với được không ạ
dòng add thư viện bị hình của ad che không nhìn được gì.. 😂
Anh ơi em làm như anh dùng git bash mà vẫn lỗi
$ firebase emulators:start
i emulators: Shutting down emulators.
Error: Could not spawn `java -version`. Please make sure Java is installed and on your system PATH.
do máy bạn chưa cài java đấy, lên mạng search cài đặt java là ok
Bài này thì ai phải kiến thức sõi thì mới hiều được. :)))
Rất hữu ích ạ. Em xin lỗi em k xem hết dc :)) hihi 😊. Trên mạng cũng có nhưng k dc chi tiết cho lắm. Cảm ơn anh
Anh làm khóa Angular fireBase đi anh
anh ơi e hỏi cái lúc e bấm đăng nhập bằng facebook nó xuất hiện lỗi thế này, giờ phải làm sao ạ?
a: null
code: "auth/argument-error"
message: "signInWithPopup failed: First argument \"authProvider\" must be a valid Auth provider."
[[Prototype]]: Error
chỗ const fbProvider b sửa như này xem được không nha: const fbProvider = new
irebase.auth.FacebookAuthProvider();
sao e làm giống như của a mà khi t tạo thêm emulators đến 1:20:00 mà trong cái FireStore trên localhost: 4000 chả có tí dữ liệu nào luôn à , trong khi đó laị có ạ
bạn fix được chưa tui cũng bị vậy
E sử dụng firebase v9 thì check user đã tồn tại trong db như thế nào anh, em thấy không còn field isNewUser nữa mà có 2 field là emailVerified và isAnonymous nhưng dù dùng tài khoản cũ hay mới thì giá trị emailVerified luôn mặc định là true và isAnonymous luôn là false ạ
import { signInWithPopup, getAdditionalUserInfo } from 'firebase/auth';
xong rồi lấy data lấy đc từ signInWithPopup cho vào -> getAdditionalUserInfo (data)
Anh làm bài hướng dẫn api facebook lấy danh sách live comment giống ứng dụng TPOS hoạt động đi anh
anh ơi cái cam của anh nó che mất nội dung terminal mất tiêu.r :(
anh ơi cái link anh đưa fix login with fb bị die rồi anh
Bạn có nhận làm wed dạng này không?
Anh ơi, khác biệt giữa useMemo và useCallback là gì vậy anh? em có đọc trên những trang trên google mà đa số chỉ nói chung chung, ví dụ thì em thấy không có gì khác biệt ạ.
useMemo sẽ trả về giá trị mà thèn callback bên trong nó return, còn useCallback thì trả về tham chiếu của callback bên trong nó.
Cảm ơn anh nhiều về project này. Mong anh ra thêm nhiều video về ReactJS. Cách giảng giải của anh rất dễ hiểu ạ.
rất hữu ích ạ. mong a ra nhiều video như thế này hơn a. 1 cách để tiếp cận, tổng hợp lại và nâng cao kiến thức của mình. Cảm ơn a
anh ơi đoạn addmodal sao của em bị lỗi setIsAddModal... is not a function ạ? anh có thể giúp em được không?
Em kiểm tra thử xem có truyền vô Provider chưa nhé
ngồi 2h mới xem xong 28phút . bài này quá là hay luôn .
cảm ơn em nhé
@@holetex ơ em phải cảm ơn anh mới đúng chứ
anh ơi em làm đăng nhập nhưng lúc đăng nhập nó báo Facebook đã phát hiện Zoom không sử dụng kết nối bảo mật để truyền thông tin. thì làm sao z anh
Em thử làm theo comment anh ghim ở dưới video nhé
anh hướng dẫn hay thật. nhưng mà nếu được anh có thể làm chậm lại thao tác coppy paste chậm lại. vì thật sự em đang hình luồng code nó chạy như thế nhưng anh coppy paste em không thể nhận biết đc anh paste vào đâu luôn. dạ anh có thể danh thêm thời gian phân tích luồng code nó chạy thế nào không ạ. anh có thể chia ra nhiều video không nhất thiết phải 1 cai đâu ạ. dạ thêm cái nữa là có 1 số hàm anh sử dụng có thể mọi người vẫn chưa biết công dụng của nó như thế nào ạ . vd như mấy hàm trong thư viện firebase. sigin, sigout. học theo sẽ biết nó dúng như thế nhưng thực sự em không biết bản chất nó là thế nào hết ạ
mấy hàm này search doc firebase có hết bạn
Firebase version 10. ngồi config mất hơn 1 tiếng được :))
con fig sao v tui mò muốn chét
kênh làm hay! rất ít kênh việt nam có nội dung như này! +1 đăng ký kênh! chúc a thành công!
Em đang tính làm một trang web, em thấy dùng firebase tiết kiệm được thời gian mình làm backend, mà cách tính tiền theo số lần read/write chát quá anh, em nghĩ chắc em tự viết backend rồi dùng mongo atlas giá cố định theo tháng hợp lý hơn.
ok thầy
anh ơi cho em hỏi deploy thì như thế nào ạ vì cái này mình đang có localhost của emulators
anh ơi cho em hỏi chút, em chạy app trên firestore của firebase emulator thì app vẫn hoạt động bthg nhma em chuyển sang chạy trên cloud firestore thì lại có lỗi ntn "Uncaught Error in snapshot listener: FirebaseError: no matching index found." là sao ạ
Em tham khảo các comment khác anh đã trả lời câu hỏi tương tự rồi em nhé
Hí hí hóng video của a nè
Cảm ơn a nhaaaa
Hóng project tiếp theo a dùng react kết hợp với redux ạ
video này 2 tiếng nhưng mất 6 tiếng để vừa nhìn vừa code theo, ảo thật đấy =))
Chúc bạn và gia đình nhiều sức khỏe, cảm ơn bạn!
chao anh. anh làm thêm video huong dẫn up lên server nữa thì tuyệt vời a ạ
Úp lên firebase thì b gõ npm run build để nó tạo ra folder build á r b push lên th
Cách deploy lên firebase khá đơn giản. Em có thể theo dõi tại trang này nhé
dzone.com/articles/react-apps-firebase
@@holetex anh có thể cho em hỏi về vấn đề ngoài project này không ? lỗi do folder build khi run build thì giải quyết thế nào anh, báo lỗi là unexpected token > . App chạy trên local vẫn ổn chỉ khi build thì bị lỗi thôi anh.
demo 1 project nhỏ dùng docker đi a :Vv
cho em hỏi là lúc anh override cái component Tab của antd mấy cái selector như .ant-collapse-header .ant-collapse-content-box mấy cái này mình xem ở đâu vậy anh
em có thể kiểm tra bằng dev tool trên trình duyệt nhé
10 phút cuối hơi lú nhỉ :(
Cuối cùng cũng làm xong hihi
Cảm ơn anh thật nhiều ><
P/s: hết 1 tuần
bạn ơi có thể hướng dẫn mình không ạ
@@khuongtran7823 bạn cần hướng dẫn gì í
@@hoale1285 taij tui sign with fb nó cứ lỗi không biết fix luôn , cái link ad gửi thì die hết nên giờ bí đường làm lun
@@khuongtran7823 lúc đầu mình cũng lỗi, nhưng mình tạo 1 account fb mới thì làm lại được í
@@khuongtran7823 11:08 -> 11:09 const fbProvider = new firebase.auth.FacebookAuthProvider();
Mình cũng chỉnh chổ này nữa
chỗ debounce khó hiểu quá a