Acredito ter encontrado um problema potencial ao usar o recurso de índice gerado automaticamente no DiscoTOC:
Ao utilizar títulos de vários níveis em idiomas que não o inglês, como o chinês, parece que os IDs data-d-toc no índice gerado automaticamente capturam apenas dígitos numéricos e letras em inglês dos títulos. Essa situação pode resultar na criação de IDs idênticos com bastante facilidade, levando subsequentemente a links incorretos na barra de rolagem do lado direito.
Na imagem acima, se os números de série nos títulos forem ambos 5, os IDs data-d-toc resultantes serão ambos toc-h2-5. Consequentemente, isso levará dois links distintos a direcionar erroneamente para a mesma seção.
No entanto, ao modificar os números de série para 1.5 e 2.5, os IDs data-d-toc serão diferentes (toc-h2-15 e toc-h2-25), garantindo efetivamente links precisos e apropriados.
Para garantir a vinculação precisa dentro da barra de rolagem, é aconselhável manter os títulos em inglês?
Além disso, para idiomas como o chinês, a solução mais viável envolveria a incorporação de números de série de vários níveis (por exemplo, 3.5, 3.6.5, 4.2.5.6) aos títulos?
Eu não tenho autoridade para fazer tais alterações no fórum da minha empresa no momento, mas agradeço sua resposta!
Além disso, gostaria de perguntar se a equipe oficial considerou incorporar suporte para outros idiomas não latinos em relação a esta tabela de conteúdo gerada automaticamente em futuras versões do componente DiscoTOC? @Lilly@awesomerobot
Na verdade, eles levaram em consideração idiomas não latinos, utilizando o método slugify(h.textContent). Suspeito que essa função slugify foi desenvolvida de acordo com o slug generation method do fórum. Quando não está no modo ‘encode’, problemas tendem a surgir, embora eu não tenha testado pessoalmente essa hipótese.
Em instâncias anteriores, quando usamos a versão oficial do componente de tema, o slug generation method do nosso fórum foi definido como ‘none’, o que deu origem a problemas semelhantes. Posso, portanto, sugerir que você tente alterar a configuração para ‘encode’?
Além disso, considerando a velocidade de correção de componentes pela equipe oficial… Em um componente vizinho, uma questão que levantei no ano passado ainda não teve solução, então sugiro que você solicite o uso da minha versão fork.
Tentei modificar essa configuração, mas os problemas mencionados anteriormente ainda persistem. O ID data-d-toc só pode ler números e letras, e ainda há instâncias de IDs de índice duplicados. Acho que o cerne da questão está em outro lugar?