Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

cls=None renders as literal string 'None' in HTML class attribute

Aperta Adatta ai principianti
#162 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
2/5
Tempo stimato
1-3 ore
Idoneità per principianti
72/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Tranquilla
Stack tecnologico
python
Ambito
frontend

Direzione di ricerca

Inizia dal punto di ingresso monsterui.franken.Card e riproduci il problema usando to_xml(Card("content", cls=None)). Segui il percorso di costruzione delle classi per trovare dove None diventa una stringa; il lavoro è completato quando cls=None omette "None" e mantiene le classi predefinite del componente, come nel comportamento di un argomento cls omesso.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

Passing cls=None to MonsterUI components results in the literal string "None" appearing in the rendered HTML class attribute, rather than the attribute being omitted.

Reproduction

from monsterui.franken import Card
print(to_xml(Card("content", cls=None)))
# Renders: <div class="None uk-card ...">content</div>
#                   ^^^^^ literal "None"

Expected behaviour

When cls=None is passed, the cls argument should be treated as absent — the same as not passing cls at all. The class attribute should contain only the component's default classes.

Current workaround

Every wrapper in downstream code must guard against None explicitly:

# Required in every wrapper to avoid "None" appearing in class output
MCardBody(*c, cls=cls, **kwargs) if cls else MCardBody(*c, **kwargs)

This boilerplate is needed on every component wrapper and is easy to forget.

Suggested fix

Guard against None in the class-building path so cls=None is equivalent to cls="" or omitting cls.

Lingua principale
Jupyter Notebook
Stelle
525
Fork
34
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di AnswerDotAI/MonsterUI

Tutte le issue di AnswerDotAI/MonsterUI

Issue simili

Altre issue su Web Dev

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.