THẢO LUẬN

Avatar
đã bình luận câu trả lời trong câu hỏi
thg 10 3, 2023 4:35 SA

@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"

method của e sửa thành:

checkShowExpandedCTTL(): boolean {
        const element: HTMLElement = document.getElementById( 'traLoi');
        const quillEditor: HTMLElement = element.querySelector('quill-view-html');
         this.showExpandedCTTL = element.offsetHeight < quillEditor.offsetHeight;
    }

rồi ở những chỗ nào e set this. traLoi thì sau đó e gọi thêm this.checkShowExpandedCTTL(), ví dụ:

ontTraLoiSelected(item) {
        this.traLoi= item;
        this.checkShowExpandedCTTL()
        ...
    }

Như này sẽ giảm đáng kể việc method checkShowExpandedCTTL bị gọi và sẽ fix đc lỗi

nếu sau khi làm như trên vẫn bị lỗi thì e lại wrap những chỗ gọi this.checkShowExpandedCTTL() trong setTimeout, lần này sẽ được thôi 😉

khi code, ngôn ngữ nào cũng vậy, hạn chế dùng tiếng việt nhé e, tập dùng tiếng Anh cho quen: ontTraLoiSelected, traLoi ---> onAnswerSelected, answer

0

[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 ạ

0

@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

0
thg 10 3, 2023 2:46 SA

làm thế nào để sử dụng sitemap trên laravel 10 ?

0
Avatar
đã bình luận câu trả lời trong câu hỏi
thg 10 3, 2023 1:34 SA

this.traLoi nó đượ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ó

    ontTraLoiSelected(item) {
        this.traLoi= item;
        ...
    }
    resetTraLoiSelected() {
        this.traLoi= null;
    }

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 ạ

0

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 ạ

0
thg 10 2, 2023 9:12 SA

cho em hỏi tại sao chỗ numberofSet là bằng 4 vậy ạ

0
Avatar
đã bình luận cho bài viết
thg 10 2, 2023 7:10 SA

viblo giờ không khác gì nồi gg dịch.

0
Avatar
đã bình luận cho bài viết
thg 10 2, 2023 2:35 SA

hay

0
thg 10 1, 2023 1:49 CH

Hay quá, mong được anh kết bạn để học hỏi kinh nghiệm ạ

0
thg 10 1, 2023 1:08 CH

đú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ó

0

D8 với D4 là sao nhỉ

0

@maitrungduc1410 e hiểu rồi, cảm ơn a

+1

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!

0

Em cám ơn anh về series này! Em mong chờ phần 4 về list câu hỏi của HR ạ ^ ^

0

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 "break không có tác dụng trong forEach", em cũng chú ý hơn mỗi khi dùng thằng này. 😅

0
thg 9 30, 2023 4:17 CH

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ỉ

0
Viblo
Hãy đăng ký một tài khoản Viblo để nhận được nhiều bài viết thú vị hơn.
Đăng kí