Що робить `~` тильда в CSS `url ()`?


93

Напр @import url("~./foobar");

Побачив тут , не впевнений, що це щось конкретне для пакету, чи це фактичний синтаксис CSS.


3
@JackMiller Ні, це не оператор виділення, це частина каталогу файлів.
user4642212

Відповіді:


134

CSS@import шлях <url>, як правило , щодо поточного робочого каталогу.

Отже, використання префікса ~на початку шляху повідомляє завантажувачу Webpack вирішити імпорт "як модуль", починаючи з node_modulesкаталогу.

Це означає, що якщо у вас встановлений модуль вузла, який називається normalizeвстановленим, і вам потрібно імпортувати файл із його імені /normalize.css, ви можете зробити це за допомогою:

@import "~normalize/normalize.css";

У зв’язаному прикладі всередині font-loader/example/test.jsє імпорт модуля з назвою font-boon.

var boon = require('./font-boon');

Всередині font-loader/example/test.cssмодуля font-boon є @imported, щоб він був доступний у text.css.

@import url("~./font-boon");


7
так .. в основному, це ~містить node_moduleшлях?
Адріанріяді

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.