@hoang55dd oh sorry e, hôm qua a ko nhìn thấy còn 1 cái ngIf bên dưới.
Sau khi xem code mới của e thì khả năng lỗi lại bị ở đây *ngIf="checkShowExpandedCTTL()" -> giá trị trả về của checkShowExpandedCTTL() thay đổi sau khi Angular vừa "check" xong template của e, như lỗi in ra thì tại thời điểm check là false nhưng về sau bị đổi thành true
tức là đoạn này return element.offsetHeight < quillEditor.offsetHeight; bị thay đổi
bởi vì e đang dùng cả cái method ở ngif nên method đó sẽ bị gọi rất nhiều lần, vì e cần nhớ là ở Angular, mỗi khi có thay đổi ở bất kì đâu trong app của e , thì Change Detection sẽ chạy lại cho toàn bộ application tree (mặc định, trừ khi e dùng OnPush), ý là cái method sẽ bị gọi đi gọi lại rất nhiều. e có thể đặt console.log ở trong đó để kiểm chứng.
Cách a khuyên e là, tạo 1 property mới cho component của e, ví dụ: showExpandedCTTL = false, ở template đoạn ngIf=checkShowExpandedCTTL() sửa thành ngIf="showExpandedCTTL"
[go_builder 4/5] RUN go mod download:
0.511 go: cannot find main module; see 'go help modules'
Dockerfile:14
12 | ADD . /app
13 | WORKDIR /app
14 | >>> RUN go mod download
15 | RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-w" -a -o /main .
16 | LABEL name="server" version="1.0"
ERROR: failed to solve: process "/bin/sh -c go mod download" did not complete successfully: exit code: 1
dạ em bị lỗi này là sao, em chưa hiểu phần file main.go lắm, file đó để đâu chạy như thế nào ạ
Cảm ơn anh ạ. Em đang học môn toán rời rạc trên trường và có dạy kiến thức này nhưng em nghĩ không biết nó dùng để làm gì nữa. Đọc xong bài của anh em lại hứng thú hơn về môn đó, em cảm ơn anh ạ
đúng là chạy dưới local, nhưng nếu build image không cẩn thận thì như mình giải thích lý do phải loại container db đi
còn config nginx không dùng vì bản chất AppRunner là chỉ chạy single container. Còn lại nó làm giúp mình phần triển khai nên không cần nginx. Ngược lại nếu chạy AppRunner với multi-container còn khó
Anh ơi, em nghĩ phần tầm quan trọng của debug và hướng dẫn cách debug trên Chrome Dev Tool anh nên tách thành bài viết khác, để trong nội dung của bài viết này nó bị loãng bài (lan man) ấy ạ (vì nội dung chính vẫn là list câu hỏi phỏng vấn).
Em cám ơn anh về bài viết chi tiết. Nhiều cái em chưa biết thật! ^ ^
Ngoài ra em bổ sung thêm 1 case nữa là không thể dùng break; trong forEach vì forEach là 1 callback chứ không phải vòng lặp bình thường. Sau đợt mất 2 tiếng chỉ để nhận bug "breakkhông có tác dụng trongforEach", em cũng chú ý hơn mỗi khi dùng thằng này. 😅
THẢO LUẬN
@hoang55dd oh sorry e, hôm qua a ko nhìn thấy còn 1 cái
ngIfbên dưới.Sau khi xem code mới của e thì khả năng lỗi lại bị ở đây
*ngIf="checkShowExpandedCTTL()"-> giá trị trả về củacheckShowExpandedCTTL()thay đổi sau khi Angular vừa "check" xong template của e, như lỗi in ra thì tại thời điểm check là false nhưng về sau bị đổi thành truetức là đoạn này
return element.offsetHeight < quillEditor.offsetHeight;bị thay đổibởi vì e đang dùng cả cái method ở ngif nên method đó sẽ bị gọi rất nhiều lần, vì e cần nhớ là ở Angular, mỗi khi có thay đổi ở bất kì đâu trong app của e , thì Change Detection sẽ chạy lại cho toàn bộ application tree (mặc định, trừ khi e dùng OnPush), ý là cái method sẽ bị gọi đi gọi lại rất nhiều. e có thể đặt console.log ở trong đó để kiểm chứng.
Cách a khuyên e là, tạo 1 property mới cho component của e, ví dụ:
showExpandedCTTL = false, ở template đoạnngIf=checkShowExpandedCTTL()sửa thànhngIf="showExpandedCTTL"method của e sửa thành:
rồi ở những chỗ nào e set
this. traLoithì sau đó e gọi thêmthis.checkShowExpandedCTTL(), ví dụ:Như này sẽ giảm đáng kể việc method checkShowExpandedCTTL bị gọi và sẽ fix đc lỗi
Dockerfile:14
12 | ADD . /app 13 | WORKDIR /app 14 | >>> RUN go mod download 15 | RUN CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build -ldflags "-w" -a -o /main . 16 | LABEL name="server" version="1.0"
ERROR: failed to solve: process "/bin/sh -c go mod download" did not complete successfully: exit code: 1 dạ em bị lỗi này là sao, em chưa hiểu phần file main.go lắm, file đó để đâu chạy như thế nào ạ
@Lang_thang lời nhuận từ đâu vậy bạn, có thể nói rõ hơn giúp mình được k
làm thế nào để sử dụng sitemap trên laravel 10 ?
this.traLoinó được thay đổi khi ấn vào các item khác nhau ạ. Hiện tại nó có 2 loại action thay đổi đến nóLỗi chỉ xuất hiện khi diều kiện
*ngIf="checkShowExpandedCTTL()"thay đổi giá trị ạEm thử setTimeout nhưng vẫn không được ạ
Cảm ơn anh ạ. Em đang học môn toán rời rạc trên trường và có dạy kiến thức này nhưng em nghĩ không biết nó dùng để làm gì nữa. Đọc xong bài của anh em lại hứng thú hơn về môn đó, em cảm ơn anh ạ
do dùng gg dịch đó :"v
cho em hỏi tại sao chỗ numberofSet là bằng 4 vậy ạ
viblo giờ không khác gì nồi gg dịch.
hay
Hay quá, mong được anh kết bạn để học hỏi kinh nghiệm ạ
đúng là chạy dưới local, nhưng nếu build image không cẩn thận thì như mình giải thích lý do phải loại container db đi còn config nginx không dùng vì bản chất AppRunner là chỉ chạy single container. Còn lại nó làm giúp mình phần triển khai nên không cần nginx. Ngược lại nếu chạy AppRunner với multi-container còn khó
D8 với D4 là sao nhỉ
Bài viết rất hữu ích, cảm ơn bạn
https://banmatgautuoi.business.site - https://www.matgaunguyenchat.online
@maitrungduc1410 e hiểu rồi, cảm ơn a
Anh ơi, em nghĩ phần tầm quan trọng của debug và hướng dẫn cách debug trên Chrome Dev Tool anh nên tách thành bài viết khác, để trong nội dung của bài viết này nó bị loãng bài (lan man) ấy ạ (vì nội dung chính vẫn là list câu hỏi phỏng vấn).
Anyway, em cám ơn anh về những chia sẻ này nha!
Em cám ơn anh về series này! Em mong chờ phần 4 về list câu hỏi của HR ạ ^ ^
Em cám ơn anh về bài viết chi tiết. Nhiều cái em chưa biết thật! ^ ^
Ngoài ra em bổ sung thêm 1 case nữa là không thể dùng
break;trongforEachvìforEachlà 1 callback chứ không phải vòng lặp bình thường. Sau đợt mất 2 tiếng chỉ để nhận bug "breakkhông có tác dụng trongforEach", em cũng chú ý hơn mỗi khi dùng thằng này. 😅docker-compose chỉ sử dụng chạy dưới local thôi phải ko b, với lại ko thấy config nginx trong bài viết nhỉ
link code lỗi hết rồi xếp ơi