質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
SCSS

SCSSは、SassのCSSメタ言語です。Webページのスタイルを指定するCSSを効率的に記述することができます。ネストと呼ばれる入れ子構造で記述するため、CSSの全体の記述量を減らせる点が特徴です。さらに変数も利用できるため、変更や修正の際に少ない作業量で対応することもできます。

コンパイル

コンパイルとは、プログラミング言語のテキストソース(ソースコード)をコンピュータ上で実行可能な形式(オブジェクトコード)に変換することをいいます

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

0回答

1537閲覧

Dart Sass で パーシャルファイルで作成したメディアクエリを読み込みたい

Uki

総合スコア7

SCSS

SCSSは、SassのCSSメタ言語です。Webページのスタイルを指定するCSSを効率的に記述することができます。ネストと呼ばれる入れ子構造で記述するため、CSSの全体の記述量を減らせる点が特徴です。さらに変数も利用できるため、変更や修正の際に少ない作業量で対応することもできます。

コンパイル

コンパイルとは、プログラミング言語のテキストソース(ソースコード)をコンピュータ上で実行可能な形式(オブジェクトコード)に変換することをいいます

Sass

Sassは、プログラミング風のコードでCSSを生成できるスタイルシート言語です。 scss ファイルを、変換(コンパイル)してCSSファイルを作成します。

Dart

Dartは、Googleによって開発されたJavaScriptの代替となることを目的に作られた、ウェブ向けのプログラミング言語である。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2021/05/11 06:55

パーシャルファイルで作成した変数とmapを使ったメディアクエリをstyle.scssに読み込みたいです。

公式推奨であるDartSassではLibSass などで使用されている@importが近い将来(2021年10月頃)使用できなくなるようです。
そのため、個人でsaasファイルを見直してみたのですが、うまく動作できなかったため、相談させていただきました。

使用環境

win10
VSCode(エディター)Ver.1.560
DartJS Sass Compiler and Sass Watcher(コンパイル用拡張機能)v0.7.4

ファイル構成

root
├index.html
├css
|└style.css(コンパイル後のCSS)
└scss
├style.scss
├_mixin.scss(mixin指定ファイル)
└_variables.scss (変数指定ファイル)

参照元

https://www.webcreatorbox.com/tech/dart-sass
https://blog.rhyztech.net/sass_use_and_forward/

試したこと

_variables.scssでメディアクエリのブレイクポイント用の変数を作成
_mixin.scssで_variables.scssを読み込み、mapと@mixinでブレイクポイントを設定
style.scssで読み込み

style.scss > _mixin.scss >_variables.scss

scss

1// _variables.scss 2 3// メディアクエリのブレイクポイント用変数 4$breakpoints: ( 5 'sm': 'screen and (max-width: 414px)', 6 'md': 'screen and (max-width: 768px)', 7 'lg': 'screen and (max-width: 1000px)', 8 'xl': 'screen and (max-width: 1200px)', 9 ) !default;

scss

1//_mixin.scss 2 3@forward 'variables'as v; 4@use "sass:map"; 5@mixin mq(v.$breakpoint: md) { 6 @media #{map.get($breakpoints, $breakpoint)} { 7 @content; 8 } 9 }

scss

1//style.scss 2 3 4@use 'variables'as v; //_variables.scssを読み込みas節でvに定義 5@use 'mixin' as m;   //_variables.scssを読み込みas節でvに定義 6@include m.mq(sm) { 7 body { 8 background: v.$gray-color; 9 } 10}

表示されるエラー

Error: _mixin.scss: 2:25 Error: expected "*". ╷ 2 │ @forward 'variables'as v; │ ^ ╵ c:\Users\〇〇\test\scss_mixin.scss 2:25 @use c:\Users\onooo\Desktop\test\scss\style.scss 3:1 root stylesheet

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問