데이비드, 주말에 시간을 빼앗아 미안해. 그래, 방금 API를 봤어. 고마워.
안녕하세요, "topic-list-columns"에 대해 다음과 같이 value transformer를 사용해 보았습니다:
export default {
name: "assignment-topic-list-column-modifier",
initialize(container) {
const router = container.lookup("service:router");
withPluginApi("1.39.0", (api) => {
api.registerValueTransformer(
"topic-list-columns",
({ value: columns }) => {
if (ASSIGN_LIST_ROUTES.includes(router.currentRouteName)) {
columns.add("posters-recent", {
header: AssignHeaderCell,
item: AssignCell,
after: "posters",
});
}
return columns;
}
);
});
},
};
목표는 “posters” 열 뒤에 새로운 열 항목과 헤더를 삽입하는 것입니다. 항목(item)은 올바르게 작동하지만, 헤더(header)는 여전히 올바른 위치에 있지 않고 “activity” 열 뒤에 배치되고 있습니다.
제 코드에 누락된 부분이 있을까요? 그리고 이를 올바르게 수행하는 방법에 대한 문서가 있을까요?
새로운 가이드가 있습니다:
하지만 이 경우에는 크게 유용하지 않을 수 있습니다.
@NateDhaliwal 정보 주셔서 감사합니다. 확인해 보겠습니다.
코드는 다음과 같이 되어야 한다고 생각합니다:
columns.add(
"posters-recent",
{ header: AssignHeaderCell, item: AssignCell }
{ after: "posters"}
});
before를 지정해야 할 수도 있습니다:
{after: "posters", before: "replies"}
@Arkshine 정말 감사합니다, 코드 잘 작동합니다 !!! 최고입니다 ![]()
현재 이러한 비추천(deprecation) 항목에 대해 경고 배너를 활성화했습니다. 따라서 아직 업데이트가 필요한 테마나 플러그인에 대해 커뮤니티 관리자에게 알림이 전송됩니다.
또한 새로운 주제 목록을 다양한 방식으로 커스터마이징하는 방법에 대한 안내 링크를 포함한 참고 가이드를 게시했습니다:
해당 링크를 원문(OP)에 추가했습니다.
David, 어떤 주제가 더 좋은지 확실하지는 않지만, 여기 있습니다:
내 새 컴포넌트(적합하다고 생각하는데)가 Enable Glimmer Topic List를 Auto로 설정하면 실패합니다 …
Auto 모드에서는 새 API가 활성화되지 않는다고 제안하고 있습니다 … Auto 모드에서 Discourse가 새 Glimmer API를 사용하도록 Theme Component에 표시(sign-post)해야 하는 것이 있나요?
여기서 경고가 표시되는 것을 확인했습니다:
하지만 위에서 제공한 날짜가 지났고 최신 빌드를 사용 중인데도 불구하고 아무 문제가 발생하지 않는 이유는 무엇일까요?
일정이 약간 지연되고 있지만, 향후 1~2주 내에 기존 코드 제거를 완료할 수 있기를 바랍니다.
그러면 아직 업데이트되지 않은 테마가 완전히 깨져버리는 건가요? 업데이트를 피해야 하나요? 아니면 테마를 포크하면 간단하게 해결할 수 있는 방법이 있을까요?
네, 주제 목록에 대한 커스터마이징이 적용되지 않게 됩니다.
그것은 권장하지 않습니다. Discourse 코어 업데이트에는 보안 수정 사항이 자주 포함되며, 업데이트를 중단하면 커뮤니티가 취약해질 수 있습니다.
다른 토픽에서 해결하신 것 같습니다 ![]()
레거시 토픽 목록과 “raw handlebars” 시스템이 이제 Discourse 코어에서 제거되었습니다. 이 변경 사항에 맞춰 플러그인과 테마를 업데이트하는 데 도움을 주신 모든 분께 감사드립니다! ![]()
정말 훌륭합니다! 이 작업을 맡은 CDCK 팀에게 축하의 말을 전합니다. ![]()
기능 요청에 대해 매우 개방적으로 받아주시고, 새로운 API의 설계도 정말 세심하게 고민해 주셔서 감사합니다. ![]()
일부 기능이 사라질까 봐 걱정했었는데, 실제로는 오히려 훨씬 더 많은 기능을 갖추면서도 사용이 훨씬 간편해졌습니다! ![]()
로우 템플릿에 대해, 오토완성 기능을 사용하는 템플릿 내에서 컴포넌트를 더 이상 사용할 수 없다는 이해가 맞나요? (예: 이모지)
this.textManipulation.autocomplete({
template: renderEmojiAutocomplete,
지금으로서는 HTML만 반환할 수 있는 것 같습니다.
언젠가 오토완성 기능이 재설계될 것이라고 말씀하신 것으로 기억하는데, 당분간은 어려울 것 같습니다.
여기에 대한 우회 방법이 있을까요? (Emoji Fluff TC 수정 중입니다)
불행히도 자동완성에 대해 적절한 비추천(deprecation) 메시지를 설정하지 못했습니다. 죄송합니다! 하지만 해결 방법은 있습니다. 아래 링크를 확인해 주세요: Autocomplete still using Raw Templates - #4 by david