Yeni bir React projesinde CSS Modülleri (Webpack css yükleyici aracılığıyla) kullanıyorum ve harika çalışıyor olsa da, çalışmak için React Select SCSS'yi almamada sorun yaşıyorum. Bunun, react-select
'daki JS'nin habersiz olduğu local
classNames oluşturmaya çalıştığını hayal ediyorum. Tüm .scss
dosyasını içe aktarmanın bir yolu var mı, ancak yerel olarak değil de global olarak kapsam oluşturuldu mu?CSS Modülleri: Bir dosya için yerel kapsamı nasıl devre dışı bırakırım?
cevap
Webpack yapılandırmanızda css yükleyicisini kullandığınızda, tipik olarak, CSS Modüllerini, querystring'de etkinleştirilmiş ?modules
ile etkinleştirmek istersiniz, bu nedenle :local
kapsamını varsayılan olarak etkinleştireceksiniz. Bu, dönüştürülmeden .selector { ... }
bildirmek isterseniz, bunu :global(.selector) {}
içine kullanmanız gerektiği anlamına gelir.
SASS yükleyiciyi kullandığınızdan, css'yi bir satıcıdan dahil etmek isterseniz, @import "~react-select"
numaralı telefonu kullanarak alabilirsiniz. Söylediğin problem, kütüphanenin tüm seçmenlerini yerel hale dönüştürmesi. Genellikle böyle iki CSS yükleyici tanımlamak :global { @import "~react-select"; }
:
// Global CSS
// We make the assumption that all CSS in node_modules is either
// regular 'global' css or pre-compiled.
loaders.push({
test: /\.css$/,
include: /node_modules/,
loader: 'style-loader!css-loader'
});
// CSS modules
loaders.push({
test: /\.css$/,
exclude: /node_modules/,
loader: 'style-loader!css-loader?modules'
});
Ben de bir uygulamayı göç ettik Bunu önlemek için, size böyle bir seçici ile yapmak aynı şekilde :global
yılında ithalat koyabilirsiniz.Eğer Geçmişte CSS modülleri ve dosya uzantısına dayalı bir kongre tanımlamak yararlı oldu, örneğin, {Dosyaadı} .module.css === {dosyaadı} .css === Küresel CSS
// Global CSS
loaders.push({
test: /\.css$/,
exclude: /\.module\.css$/,
loader: 'style-loader!css-loader'
});
// CSS modules
loaders.push({
test: /\.module\.css$/,
loader: 'style-loader!css-loader?modules'
});
(github konularda kazıma itibaren) benim için çalışıyor alternatif bir çözüm vs CSS Modülleri, aşağıdaki gibidir:
Webpack2 yapılandırma (ilgili bölümü), bir örnek olarak slick-carousel
kullanılması
{
test: /\.css$/,
use: [{
loader: 'style-loader',
}, {
loader: 'css-loader',
options: {
modules: true,
},
}, {
loader: 'postcss-loader',
}],
}
moduleX.js
. Başka bir deyişle
// Import the libraries css without the module gear being applied
//
import '!style-loader!css-loader!slick-carousel/slick/slick.css';
// Import my applications css. `styles` will be the typical
// `slide_foo_xeh54` style set of module exports
// (depending how you have your css-loader
// configured
//
import styles from './Slides.css';
, her şey özel olarak sürü varsa farklı yükleyiciler (! x! y)
ile içe dışında css-yükleyici için yapılandırılmış seçenekler, sizin webpack yapılandırma dosyasını takip edecek istisnalar/globals, sonra kabul edilen çözüm daha iyi olabilir.
- 1. Bir sistem aygıtını nasıl devre dışı bırakırım?
- 2. ASP.Net: Bir ListItem'i nasıl devre dışı bırakırım?
- 3. QTabWidget'te bir sekmeyi nasıl devre dışı bırakırım?
- 4. dropzone'un otomatik dosya yüklemesini nasıl devre dışı bırakırım?
- 5. Netbeans: Bunu nasıl devre dışı bırakırım?
- 6. Önbelleği tamamen nasıl devre dışı bırakırım?
- 7. Coq'deki özel gösterimi nasıl devre dışı bırakırım?
- 8. Matplotlib'deki klavye kısayollarını nasıl devre dışı bırakırım?
- 9. Teamcity'deki kullanıcıları nasıl devre dışı bırakırım?
- 10. Yerel olarak tepki vermek için animasyonlu bir gif'i nasıl durdurur/duraklatır/devre dışı bırakırım?
- 11. Bir WPF MenuItem'de Mnemonics'i nasıl devre dışı bırakırım?
- 12. OptionMenu'da tek bir seçeneği nasıl devre dışı bırakırım?
- 13. Bir hesabı ASP.NET Üyelik Sağlayıcısı ile nasıl devre dışı bırakırım?
- 14. Bir Googletest (gtest) parametreli testini nasıl devre dışı bırakırım?
- 15. Windows Forms'ta bir formu güncellemeyi nasıl devre dışı bırakırım?
- 16. Görsel stüdyodaki komut satırlarından eklentileri nasıl devre dışı bırakırım?
- 17. iPad web uygulamasında kaydırmayı nasıl devre dışı bırakırım?
- 18. Yeniden Yapılandırılan Metinlerdeki Uyarıları Nasıl Bastırırım veya Devre Dışı Bırakırım?
- 19. Oyun yapımcısında google play otomatik girişini nasıl devre dışı bırakırım?
- 20. WinForms DataGrid'deki düğme hücresini nasıl devre dışı bırakırım?
- 21. iis 6 E-postaları nasıl devre dışı bırakırım 6
- 22. Java swing menü öğelerini nasıl devre dışı bırakırım?
- 23. Web Data Administrator'da doğrulamayı nasıl devre dışı bırakırım?
- 24. Yerel olarak devre dışı bırakma
- 25. Orchard modülünü programsal olarak nasıl devre dışı bırakırım?
- 26. "Satır sonunun ötesinde imleci nasıl devre dışı bırakırım?"
- 27. C# mesaj kutusu bip sesini nasıl devre dışı bırakırım?
- 28. XCode'da hata olarak işaretlenen uyarıları nasıl devre dışı bırakırım
- 29. jQuery ile bağlantıları dinamik olarak nasıl etkinleştiririm/devre dışı bırakırım?
- 30. DateTimePicker denetiminde bazı tarihleri nasıl devre dışı bırakırım?
Bu işi yapmak için, içinde aşağıdakileri içeren bir .eslintrc dosyası oluşturmanız gerekir. { "kurallar": { "import/no-webpack-loader-sözdizimi": "kapalı" } } – webmaster