Я хотел предложить альтернативу тем, кто использует проект, построенный с vue-cli
, поскольку, если вы в конечном итоге будете использовать миксины в нескольких компонентах. Может быть утомительно каждый раз вручную импортировать их, а также добавлять дополнительный код в ваши файлы.
Вы можете настроить sass-loader
для добавления css
или scss
в каждый компонент. Это удобно, когда дело доходит до таких вещей, как mixins
, functions
и variables
для S CSS.
Ниже я импортирую один файл с именем _theming.scss
, этот файл импортирует Bootstraps mixins
, variables
и functions
. Таким образом, я могу свободно использовать переменные Bootstrap, например, в моих компонентах, и если я сделаю какие-либо переопределения в файле _theming.scss
, они также будут применены ко всему моему приложению.
vue .config. js (если этот файл не существует, создайте его в root вашего проекта, где package.json
)
module.exports = {
css: {
loaderOptions: {
sass: {
prependData: `@import "@/assets/scss/_theming.scss";`
}
}
}
};
_theming. s css
@import "~bootstrap/scss/functions";
@import "~bootstrap/scss/variables";
@import "~bootstrap/scss/mixins";
Примечание: Только помните, что не нужно помещать любые css
, которые отображаются в файле, который вы используете, в prependData
. Поскольку это добавит css
к каждому имеющемуся у вас компоненту, даже если вы не используете css в компоненте, вы увеличите размер своего комплекта.
Например, если вы изменили файл _theming.scss
до:
.text-red {
color: red;
}
@import "~bootstrap/scss/functions";
@import "~bootstrap/scss/variables";
@import "~bootstrap/scss/mixins";
Все ваши компоненты внезапно будут содержать css
:
.text-red {
color: red;
}