2

我的目标是LIBSASS_STYLE="expanded"通过flask_assets.Bundle. webassets libsass 文档说我可以做到,但没有说明如何做到。

我的基本应用控制器如下所示。

from flask import Flask, render_template
from flask_assets import Environment, Bundle

app = Flask(__name__)

# ... Typical flask controller stuff

if __name__ == "__main__": 
    assets = Environment(app)

    css = Bundle(
        'sass/*.scss',         # input scss files
        filters='libsass',     # to be compiled by libsass
        output='css/style.css' # and outputed to style.css
    )

    assets.register("asset_css", css)

    app.run(debug=True)

这会输出一个有效的 css 文件(这很棒),但不是我想要的格式,因为我根本不知道我可以在哪里滑动任何 libsass 选项。

非常欢迎对此问题的任何帮助。谢谢!

4

1 回答 1

1

您需要显式实例化 libsass 过滤器以将选项传递给它

from flask_assets import Bundle
from webassets.filter import get_filter

libsass = get_filter(
    'libsass',
    as_output=True,
    style='compressed',
)

css = Bundle(
    'sass/*.scss',
    filters=(libsass),
    output='css/style.css'
)
于 2017-11-14T05:09:59.620 回答