Lỗi thường gặp khi cai react native window
Chào các tín đồ của React Native nói tiêng cũng như các bạn đang chuẩn bị nhập môn RN và đang chuẩn bị bỏ cuộc chỉ vì cái màn hình này Màn hình này thật tế nó cũng đáng sợ như cái màn hình xanh lè của bên Windows nhưng được cái là nó “tử tế” hơn vì có chỉ dẫn cách fix. Dù ... Show
Chào các tín đồ của React Native nói tiêng cũng như các bạn đang chuẩn bị nhập môn RN và đang chuẩn bị bỏ cuộc chỉ vì cái màn hình này Màn hình này thật tế nó cũng đáng sợ như cái màn hình xanh lè của bên Windows nhưng được cái là nó “tử tế” hơn vì có chỉ dẫn cách fix. Dù là có fix cũng như không !!! Mình làm bài note này để tổng hợp các thể loại “đèn đỏ”, lỗi thường thấy trong RN và cách để fix chúng. Mục đích chính là để thông đường cho các anh em đang còn bị kẹt lại. Bài này để tiện mình chỉ show bên máy ảo iOS (đa số bị bên này): Màn hình lỗi thần thánh của React NativeLỗi syntax: Nhìn vào thấy ngayLỗi syntax tại file App.js line thứ 10Lỗi này nhìn vào là thấy được ngay như hình mô tả, rất dễ. Đôi khi cái backtrack (các dòng show lỗi bên dưới) nó dài tới nỗi phải scroll mấy mét mới thấy được. Thiếu Module: Install nhớ có “–save” nhéModule redux không tìm thấyLỗi này thường bị khi chúng ta import sai. Có 3 nguyên nhân chính:
watchman watch-del-all rm -rf ./node_modules npm cache clean yarn cache clean rm -rf $TMPDIR/react-* yarn install npm cache clean yarn cache clean yarn add uuid npm start -- --reset-cache
Lỗi chưa chạy package server hoặc server đã ngủmNhiều bạn mới học RN không để ý là khi react native nó run vào máy ảo thì nó cần 1 con server chạy lên trước (package server). Con server này sẽ đóng gói cho mình cái file bundle js đẩy vào máy ảo. Ngoài ra nó cũng phải sống để mình reload máy ảo (ko cần build lại) nó sẽ làm lại thao tác trên. Mọi ma thuật đều có cơ chế của nó, cơ chế hỏng thì ma thuật hết phép. Cách fix: chạy lại với lệnh npm start hoặc npm start -- --reset-cache. Chỗ này các bạn lưu nếu bị lỗi như hình sau: Port 8081 đang bị chiếm dụng, các bạn tiếp tục sửa theo hướng dẫn là OK. Ví dụ như sau: Kill 2 process chiếm port là ok Trường hợp OK là thế này: Lỗi CFBundleIdentifer: người vô tội phải hứng hết tội lỗi. Tương tự lỗi trên RN >= 0.45CFBundleIdentifer nó có tội gì đâuMình khẳng định CFBundleIdentifer vô tội trong vụ này. Ai đi mở cái CFBundleIdentifer trong XCode sửa là tới mùa quýt không fix được |