Swiper
не ждёт свойства spaceBetween
. Вы уверены, что оно хоть что-то делает?Swiper
и на самом деле он такое свойство ждёт, то вам следует репортить этот баг автору компонента (предварительно обновившись до последней версии).declare module 'путь до типов компонента Swiper' {
interface SwiperProps {
spaceBetween: number;
}
}
:root
$basewidth: 960px
а, очевидно,:root
$basewidth: 960px
:root
$basewidth: 960px
div
width: $basewidth
:root
$basewidth: 960px
div
width: $basewidth
<compnent-group-name>.variables.scss
и импортируете его куда надо. props
. Каждый отдельный компонент - чёрный ящик. У тебя должна быть возможность полностью и кардинально изменить вёрстку внутри компонента, не изменив его поведение. В vue 3 для этого даже есть удобная конструкция v-bind
внутри <style>
.$gap
глобальный параметр, можно в конфиге vue\sass-loader добавить общий для всех файл с переменными. [data-theme="dark"] {
--some: some;
}
[data-theme="dark"]
$some: some
module.exports = {
css: {
loaderOptions: {
sass: {
prependData({resourcePath}) {
const vueFileName = resourcePath.match(/([^\\\/]+).vue$/i);
if(vueFileName)
return `$vue-file-name: "${vueFileName[1]}"`
}
}
}
}
}
В каждом Vue компоненте в sass у вас будет теперь переменная $vue-file-name
с именем файла. .menu
&_link
не .menu_item .menu_link
, а просто.menu_link
. font-size
для .menu_link
, которое обладает более высоким приоритетом по праву очередности, а когда вы указываете .menu_item .menu_link
уже это правило обладает более высоким приоритетом над последующим .menu_link
как более точный селектор.@media
с max-width
большим 1200px - в таком случае просто поменяйте порядок @media
.