Я довольно новичок в мире VueJS
и Webpack
, поэтому мне нужна помощь.Использование CSS Framework в каждом компоненте Vue с собственными переменными
Я установил VueJS
и Webpack
через консоль с помощью команды
vue init webpack my-project
и после этого я установил bulma CSS Framework в этом каталоге. с
npm install bulma
Я переопределить некоторые bulma
переменные в variables.scss. Если я импортирую оба файла в разделе стиля моего App.vue все работает нормально.
Мои App.vue выглядит следующим образом:
<template>
<div id="app">
<top-navigation/>
<div class="has-text-centered">
<img src="./assets/logo.png">
<p>Test</p>
<router-view></router-view>
</div>
</div>
</template>
<script>
import TopNavigation from './components/shared/TopNavigation.vue'
export default {
name: 'app',
components: {
'top-navigation': TopNavigation
}
}
</script>
<style lang="scss">
@import 'assets/scss/_variables.scss';
@import '~bulma';
</style>
Мои TopNavigation.vue выглядит следующим образом:
<template>
<div>
<div class="blue-bg">
<div class="container">
<h2 class="title">Test</h2>
</div>
</div>
</div>
</template>
<script>
export default {
data() {
return {
msg: 'hello vue'
}
}
}
</script>
<style lang="scss">
.blue-bg {
height: 80px;
background-color: $blue;
}
</style>
Но я получаю сообщение об ошибке:
error in ./src/components/shared/TopNavigation.vue
Module build failed: background-color: $blue;
Undefined variable: "$blue".
Я искал какое-то время и пытался импортировать файлы непосредственно в моем webpack
utils.js файла, как это:
scss: generateLoaders(['css', '[email protected] "./src/assets/scss/_variables.scss";@import "~bulma";']),
Теперь я не получаю сообщение об ошибке, и в моем TopNavigation
использует правый синий цвет. Но теперь bulma-variable
не переопределяют.
Надеюсь, вы, ребята, понимаете мою проблему, и кто-то может мне помочь.