亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Leafo/scssphp 忽略子目錄中的文件

Leafo/scssphp 忽略子目錄中的文件

PHP
牧羊人nacy 2022-05-27 14:34:33
Leafo/scssphp 工作正常,除了文件在子目錄中時,我嘗試了 addImportPath 但仍然無法包含那些子目錄文件,這是我的 scss 代碼。.my-parent-container {    background-color: $body-background;    @import './base/reset';    @import './abstracts/placeholders';    @import './base/typography';    @import './layout/header';    @import './components/buttons';    @import './components/switch_button';}PHP 代碼$scss = new \Leafo\ScssPhp\Compiler();$scss_path = base_path('public/assets/tmpl-scss/style.scss');$scss->setVariables($colors);$css = $scss->compile('@import "'.$scss_path.'"');不添加重置、占位符、排版、標題、按鈕和 switch_button 等文件。謝謝
查看完整描述

1 回答

?
慕碼人2483693

TA貢獻1860條經驗 獲得超9個贊

根據我在他們的文檔中的理解: https ://scssphp.github.io/scssphp/docs/


當您使用 @import 指令導入文件時,您的 PHP 腳本的當前路徑默認用作搜索路徑。這通常不是您想要的,因此有兩種操作導入路徑的方法:addImportPath 和 setImportPaths。


addImportPath($path) 將 $path 附加到搜索的導入路徑列表中。


setImportPaths($pathArray) 將用 $pathArray 替換整個導入路徑。如果 $pathArray 的值不是一個數組,它將被轉換為一個數組。


所以,我會這樣做:


$scss = new \Leafo\ScssPhp\Compiler();

$scss_path = base_path('public/assets/tmpl-scss/style.scss');

$scss->setImportPaths([

    'public/assets/tmpl-scss/'

    'public/assets/tmpl-scss/base/',

    'public/assets/tmpl-scss/abstracts/',

    'public/assets/tmpl-scss/layout/',

    'public/assets/tmpl-scss/components/',

]);

$scss->setVariables($colors);

$css = $scss->compile('@import "'.$scss_path.'"');

在 CSS 中:


.my-parent-container {

    background-color: $body-background;

}


@import 'reset';

@import 'placeholders';

@import 'typography';

@import 'header';

@import 'buttons';

@import 'switch_button';

此外,您可能想看看源地圖:https ://scssphp.github.io/scssphp/docs/#source-maps


我不確定這是否可行,因為我從未親自使用過 Leafo ScssPhp。但是你可以試試這個,它可能會給你一個起點。


查看完整回答
反對 回復 2022-05-27
  • 1 回答
  • 0 關注
  • 164 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號