我創建使用create-react-app
一個反應項目,並正與該文件夾結構工作:如何在導入的sass文件中使用本地webfont?
- 的src/
- 組件/
- 菜單/
- Menu.scss
- 菜單/
- 全球/
- 字體/
- myfont.ttf
- 等...
- myfont.scss
- 字體/
- 組件/
在Menu.scss,我導入使用@import '../../Global/myfont';
。
在myfont.scss,我包括字體:
@font-face {
font-family: 'myfont';
src: url('./fonts/myfont.ttf');
...
font-weight: normal;
font-style: normal;
}
我得到 「錯誤:模塊未找到」。 如果爲了測試,我將路徑更改爲src: url('../../Global/fonts/myfont.ttf');
,一切正常。
有沒有一種方法可以設置URL路徑,因此無論從哪裏導入都可以工作?
如果你已經註冊它'myfont.scss'(假設這是裝在你的WebPack /其他方式) ,如果你只是使用'font-family:myfont;',它不會在'Menu.scss'上工作嗎? –
不,myfont不是任何地方導入..我導入scss文件在我的.js模塊文件中,我不完全理解如何簡單的sass(_partials編譯成主要的CSS,並編譯的CSS添加到HTML)與sass反應結構的一部分。這是我的第一個測試項目:-) –
如果你沒有文件打包程序,那麼從導入的每個scss文件將有不同的路徑,因爲它位於項目結構的不同位置。例如,如果你有一個在'index.js'加載的scss,那麼它可以加載其他的scss文件,這些文件將使用我上面寫的規則。 –