주제 목록 미리보기 (TLP)

급하지 않으니 걱정 마세요. :+1: 우선순위에 맞춰 시간이 되면 확인해 주세요. 그 동안 저도 더 테스트해 보고 문제가 있으면 알려드릴게요.

3개의 좋아요

참고로, 하위 카테고리를 표시할 때 카테고리 페이지에서 주제 목록 항목들이 겹치는 문제가 있습니다. 이로 인해 사용자 경험이 저하될 수 있습니다.

1개의 좋아요

아마도 TLP TC 또는 기타 요소에서 발생한 JS 오류 때문일 것입니다.

레이아웃은 정상 작동하는 JS를 요구합니다. 페이지의 JS가 손상되면 TLP "렌더러"가 중단될 수 있습니다.

페이지를 새로고침하면 어떻게 되나요?

콘솔에 오류가 표시됩니까? 현재 재현이 불가능합니다. 예: https://starzen.space/c/uncategorized/1

1개의 좋아요

성공적으로 재현했습니다(여전히 타일 및 발췌가 활성화된 상태).

그리고 네, 새로고침을 하면 레이아웃이 잠시 동안 정상으로 돌아옵니다. 참고로 타일 하단의 빈 공간은 정상적인 것으로 보이지 않습니다. 콘솔에서는 "modifyClass 호출에 pluginId 키를 추가하세요"라는 알림 외에 다른 오류는 확인되지 않았습니다.

몇 번 더 새로고침을 한 후, 첫 번째 이미지에 표시된 방식으로 레이아웃이 다시 깨졌습니다.

음, 링크하신 카테고리에 하위 카테고리가 없는 것 같습니다. 레이아웃이 깨지는 현상은 카테고리 페이지에 하위 카테고리 목록이 있을 때만 발생합니다.

저도 재현이 되지 않습니다. 하위 카테고리를 생성하고 해당 카테고리로 이동해 봤는데, 타일이 정상적으로 렌더링됩니다.

다른 TC(테마/컴포넌트)와 플러그인을 모두 제거해 보고, 레이아웃이 깨지는 원인이 되는 것이 있는지 확인해 보세요.

3개의 좋아요

로버트님,

또 다른 작은 문제를 발견했습니다. TLP tc가 활성화되면, 특정 뷰에서 활성화하지 않은 경우에도 일반 토픽 목록에서 category-and-tags 클래스가 있는 div 태그의 폭이 좁아집니다. 다만, 이 문제를 일으키는 정확한 CSS를 찾지는 못했습니다.

TLP 활성화 시

TLP 비활성화 시

1개의 좋아요

이전 피드백에 대응하여 이 변경 사항을 적용했습니다.
이는 액션(actions)을 수용하기 위한 의도적인 선택입니다. 일종의 트레이드오프입니다. 모든 주요 브라우저에서 컨테이너 쿼리가 지원되면 이를 더 지능적으로 만들 수 있을 것입니다. 현재 Firefox만 아직 미지원 상태입니다.

액션을 활성화하지 않은 상태이기 때문에 확실히 더 어색해 보일 수 있습니다.

활성화한 상태의 예시는 다음과 같습니다:

액션이 있는 경우 태그 끝이 세로로 정렬되지 않는 것에 문제가 없다면, 다른 방식으로 디자인할 수 있지만 그렇게 하면 다른 측면에서 비효율적이 됩니다.

액션이 없는 경우 액션 '열’의 크기를 줄이는 조정 기능을 추가할 수 있을 것입니다.

솔직히 말하면, 타일(Tiles)은 모바일에서 가장 정교한 레이아웃 옵션입니다.

1개의 좋아요

Hey merefield. 자세한 설명 감사합니다.

제 경우 TLP를 켜둔 이유는 주제 썸네일 선택기(topic thumbnail picker)를 표시하기 위해서일 뿐입니다(그 외 모든 설정은 비활성화되어 있음).

TLP TC가 비활성화된 상태에서 썸네일 선택기를 표시할 수 있는 방법이 있다면 그렇게 하고 싶습니다. 그래서 해당 “버그” 보고를 제출한 것입니다. TLP TC가 활성화되어 있지만 실제 설정이 하나도 활성화되어 있지 않은 상태인데, 저는 그걸 예상하지 못했습니다.

이 "버그"가 중대하지 않다면, TLP TC를 활성화할 필요 없이 플러그인 옵션을 통해 썸네일 선택기를 활성화할 수 있는 옵션에 대한 기능 요청을 제출할 수 있습니다. 이것이 가능한가요?

1개의 좋아요

액션을 사용하지 않는 경우를 고려하여 (상당히) 더 많은 공간을 확보하도록 조정했습니다:

업데이트 후 직접 사용해 보세요.

4개의 좋아요

Robert님,

빠르게 수정해 주셔서 감사합니다. 정말 감사드립니다! 이제 기대했던 동작에 좀 더 가까워졌지만, 모바일의 공간이 매우 제한적이므로 이를 최대한 활용하고 싶습니다.

이 부분에 대해 후속 질문을 드립니다. 이러한 기능이 있다면 위의 문제를 해결할 수 있을 것입니다.

1개의 좋아요

TC와 플러그인이 분리되어 있는 이유는 플러그인 기능이 없는 일부 사용자도 기본 기능을 활용할 수 있도록 하고, 프론트엔드 변경 사항을 매우 빠르게 배포할 수 있도록 하기 위해서입니다.

현재로서는 이러한 역할 분담을 변경할 계획이 없으며, 모든 프론트엔드 코드를 TC에 유지할 예정입니다. 또한 제 시간도 꽤 제한적입니다.

3개의 좋아요

최근 리팩토링 과정에서 주제 목록을 깨뜨렸네요. 죄송합니다. 이제 수정되었습니다. FIX: refactor broke Like · merefield/discourse-tc-topic-list-previews@f41d9de · GitHub

3개의 좋아요

@Kuro22 이 문제를 해결하셨나요? 다른 컴포넌트/플러그인과 충돌이 있는지 확인하거나, 에러를 확인해 보셨나요?

1개의 좋아요

컴포넌트를 업데이트한 후 오류가 발생하고 있습니다:

Your site may not work because theme / component Topic List Previews has errors. Disable it at..

다른 모든 컴포넌트를 비활성화해 보았고, 다른 테마로 전환해 보았지만 문제가 해결되지 않습니다.
적어도 로그인할 때만 표시되며, 경고 외에는 실제 문제를 발견하지 못했습니다.

로그

Topic List Previews 테마/컴포넌트에서 오류가 발생하고 있습니다:

initialize@https://mydomain.com/theme-javascripts/b44a9c3c1aecf9da1fde6508abfa890657ed08b0.js?__ws=mydomain.com:953:21
_prepareInitializer/init.initialize@https://mydomain.com/assets/application-b796ecb1e6cc40160bed7938dadcbb11fb359f74cf8e1065c0d7c2a0c69b2e82.js:9:12432
runInstanceInitializers/<@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:21:22368
Vertices</Vertices.prototype.each@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:11271
Vertices</Vertices.prototype.walk@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:10019
DAG</DAG.prototype.each@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:9174
DAG</DAG.prototype.topsort@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:9236
_runInitializer@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:21:22761
runInstanceInitializers@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:21:22177
_bootSync@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:20:24938
didBecomeReady@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:21:241
invoke@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:29:24903
flush@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:29:23174
flush@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:29:26603
_end@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:3918
end@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:29:30629
_run@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:4816
_join@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:30:4445
join@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:29:31756
join@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:23:2782
bind/<@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:23:3839
mightThrow@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:2:15381
resolve/</process<@https://mydomain.com/assets/vendor-e356674b67559130cbeca4530a0a5a00e71144f5e7556902f8a5efc8ac3f2282.js:2:16035

Discourse 2.8.8을 사용 중입니다. (2.8.9는 아직 Yunohost를 통해 사용할 수 없습니다.)

1개의 좋아요

이것이 가장 가능성 높은 문제 원인입니다.

TLP는 최신 tests-passed 버전(즉, 현재 2.9.0.beta10)만 지원합니다.

저는 2일 전에 아무 문제 없이 업데이트를 수행했습니다. (업데이트: 방금 다른 사이트에서 또 다른 업데이트를 진행했는데 이것도 문제없었습니다.)

불행히도 이 문제를 해결하려면 최신 버전으로 업데이트해야 할 것 같습니다. 현재 문제는 Discourse 코어가 Ember 버전을 매우 빠르게 변경하고 있어, TLP도 이에 맞춰 빠르게 따라잡아야 한다는 점입니다. 현대적인 TLP 코드는 더 이상 Discourse 2.8.8에서 작동하지 않는 것으로 보입니다.

만약 깨진 커밋을 찾아 PR을 제출하고 싶으시다면, 버전 고정(version pinning)을 받아들일 것입니다: Introducing .discourse-compatibility: pinned plugin/theme versions for older Discourse versions

2개의 좋아요

답변 감사합니다!
지금은 TLP를 다운그레이드할 수 있을까요?

1개의 좋아요

위쪽 업데이트를 확인해 주세요. PR에 pin을 받아들이긴 하지만, 깨진 커밋을 찾는 조사는 직접 해주셔야 합니다.

1개의 좋아요

제 실력으로는 '아니오’에 더 가까운 것 같습니다 :slight_smile:
업데이트가 올 때까지 이대로 두면 실제로 문제가 생길까요?

1개의 좋아요

무엇을 약속할 수는 없지만, 이 컴포넌트는 프론트엔드에만 영향을 미치므로 비교적 무해합니다. 다만 철저히 테스트해야 합니다. 해당 메시지는 무언가가 깨졌음을 시사하지만, 정확히 무엇이 문제인지 저는 알 수 없거든요. 이 메시지를 유발할 수 있는 코어 코드를 파고들어 원인을 파악할 수도 있습니다.

어쨌든 test-passed 트랙으로 넘어가는 방법을 반드시 찾아야 합니다. 그렇지 않으면 이 문제를 계속 반복해서 겪게 될 테니까요.

1개의 좋아요

사이드카 #customization:plugin에 경미한 버그가 있는 것 같습니다.

이 영상을 보면 좋아요/링크 버튼을 클릭할 때 토픽 미리보기가 약간 오른쪽으로 이동하는 것을 확인할 수 있습니다.

1개의 좋아요