I got a rather simple problem with a VueJS component that needs to use a variable. The problem comes with getting sass to register variables inside a component.

我try 导入包含变量的_variables.scss文件,但没有成功.在这一点上,非常感谢任何指导,或者组件是否有其他方式来继承样式.

MyComponent.vue

<template>
    <div class="my-color"></div>
</template>
<style lang="sass">
    .my-color {
        color: $primary-color;
    }
</style>
<script>
    export default{
        data(){
            return {}
        }
    }
</script>

Gulpfile.js

var elixir = require('laravel-elixir');
require('laravel-elixir-vueify');

elixir(function(mix) {
    mix.browserify('main.js');
    mix.sass('app.scss');
});

app.scss

@import "node_modules/bootstrap-sass/assets/stylesheets/bootstrap";
@import "modules/variables";

variables.scss

$primary-color: #BA2731; //Red

推荐答案

Importing the _variables.scss in every component seems to be the only solution I've found so far (it should work, according to this issue).

<template>
    <div class="my-color"></div>
</template>
<style lang="sass">
    @import 'path/to/your/_variable.scss'; // Using this should get you the variables
    .my-color {
        color: $primary-color;
    }
</style>
<script>
    export default{
        data(){
            return {}
        }
    }
</script>

As you are only going to include variables, this shouldn't be a problem.

但正如本期文章中提到的,需要注意的是:您应该只在每个组件中包含抽象实体(变量、扩展、混合),而不是具体的CSS规则.

Laravel相关问答推荐

Nuxt 3获取多部分表单数据上传不起作用

在Laravel Sail Docker环境中的PHPMyAdmin中出现`Out of Memory‘错误

Laravel FAKER语法

Laravel 通过 API 嵌套 url 发布

如何在使用Docker容器部署Laravel 8、9、10时处理SIGTERM信号,特别是与调度程序和工作进程相关的问题?

vagrant会损坏你的电脑. | macOS v12(蒙特雷)#13132

使用正则表达式 laravel 忘记缓存

使用 laravel 根据当月显示注册用户列表

Laravel 如何处理来自浏览器的 PUT 请求?

上传时Laravel正在旋转图像

Laravel 4 如何监听模型事件?

laravel 密码盐存储在哪里?

Laravel - 如何恢复本地存储符号链接并刷新

Laravel:每当我返回一个模型时,总是返回一个与它的关系

干预图像:直接从带有原始文件名和分机的网址保存图像?

如何在 Laravel 查询中使用多个 OR、AND 条件

Laravel 字符串验证以允许空字符串

如何在 Laravel 5 中验证 RESTful API?

Laravel 验证用户名不允许有空格

错误:找不到模块 'webpack/lib/rules/DescriptionDataMatcherRulePlugin' 需要堆栈: