Im April dieses Jahres habe ich ein Vorstellungsgespräch mit einem Unternehmen geführt.
Während des technischen Interviews wurde ich gefragt, ob ich das CSS-Modul verstanden hätte.
Er fragte weiterhin, wie es mit Ihrer täglichen Entwicklung sei ? Was soll ich tun, wenn ich Komponenten und Elementen Klassennamen gebe?
Ich habe gesagt, dass Sie den Elementen und Komponenten bestimmte Präfixe hinzufügen sollen, um sicherzustellen, dass die von Ihnen geschriebenen Klassennamen nicht mit den von anderen Kollegen geschriebenen Klassennamen in Konflikt geraten.
Dann hörte es auf und ich wurde viel über die Prinzipien von React gefragt und habe das Interview bestanden.
[Empfohlenes Tutorial: CSS-Video-Tutorial ]
Ein Bild, um das Funktionsprinzip von CSS-Modulen zu verstehen:
Als wir uns selbst programmierten, hatten wir zwei Dateien, eine ist ProductList .less-Datei, eine davon ist die ProductList.jsx-Datei
Nach dem Erstellen wird die less-Datei in die Datei mit einem blauen Titel konvertiert.
Daraus ist ersichtlich:
Dann müssen Sie nur noch .button {…} in die CSS/less-Datei schreiben und über „styles.button“ in der Komponente darauf verweisen.
CSS-Module sind standardmäßig lokal gültig. Wenn Sie eine globale Regel deklarieren möchten, können Sie die :global-Syntax verwenden.
Zum Beispiel:
.title { color: red; } :global(.title) { color: green; }
Bei Anführungszeichen:
<App className={styles.title} /> // red <App className="title" /> // green
In einigen komplexen Szenarien kann ein Element mehreren Klassennamen entsprechen, und jeder Klassenname bestimmt anhand einiger Bedingungen, ob er angezeigt wird. Zu diesem Zeitpunkt ist die Klassennamenbibliothek sehr nützlich.
import classnames from 'classnames'; const App = (props) => { const cls = classnames({ btn: true, btnLarge: props.type === 'submit', btnSmall: props.type === 'edit', }); return <div className={ cls } />; }
Wenn auf diese Weise unterschiedliche Typen an die App-Komponente übergeben werden, werden unterschiedliche Klassennamenkombinationen zurückgegeben:
<App type="submit" /> // btn btnLarge <App type="edit" /> // btn btnSmall
Weitere Programmierkenntnisse finden Sie unter: Programmier-Tutorial! !
Das obige ist der detaillierte Inhalt vonWas sind CSS-Module? Finden wir es gemeinsam heraus!. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!