代码之家  ›  专栏  ›  技术社区  ›  Patrick Kenny

如何将全局SCSS文件添加到Svelte/SvelteKit?

  •  0
  • Patrick Kenny  · 技术社区  · 7 月前

    我正在将React应用程序迁移到Svelte。React应用程序不限定其CSS范围;所有内容都在一个由几十个SCSS文件组成的样式表中。这个样式表只有8kb,所以我想在我的Svelte/SvelteKit应用程序中将其用作全局SCSS文件。

    有一个 long discussion about global styles in the sveltekit repo 但我在那里找不到解决办法。

    根据讨论,SCSS的导入似乎应该在全球范围内完成 +layout.svelte .

    因此,我添加了以下行:

    <style lang="scss">
        @import '../assets/css/AppGlobal.scss';
    </style>
    

    然后,我用 npm run build ; 有几个关于未使用的CSS选择器的警告,但构建已完成。

    然后我检查了应用程序 npm run preview 我编译的SCSS没有加载到任何地方(不是在 / 路径)。

    我需要做什么才能让SCSS在全球范围内工作?这是我和Svelte的第一天。

    Svelte 4和SvelteKit 2。

    1 回复  |  直到 7 月前
        1
  •  1
  •   brunnerh    7 月前

    将在 <script> ,否则默认情况下它是作用域,所有不适用于当前组件的规则都将被删除。

    <script>
      import '../assets/css/AppGlobal.scss';
    </script>
    

    (有一些方法可以使用 :global ,但可能需要预处理。)