问题标签 [flask-assets]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
1215 浏览

python - 设置 Flask 以使用 *.scss - 使用 Flask-Assets 和 PyScss

我无法让 Flask 与 scss 一起工作。我研究了这个Using sass with Flask and jinja2Set up Flask with webassets。但我目前被卡住了。我设置了所有内容,并且在使用服务器运行flask run服务器时启动时没有错误。当我去 localhost:5000 我得到这个错误:

此页面不工作 localhost 没有发送任何数据。ERR_EMPTY_RESPONSE

但是服务器的日志是空的,并且没有生成 *.css 文件。控制台中的所有内容:

这是我的结构:

__init__.py

layout.html

config.py

views.py

nav.scss

color.scss

requirements.txt

0 投票
1 回答
1099 浏览

flask - Cant generate all.css file from sass files with flask-assets

I became tired of using css in my flask app so I decided to move to scss with flask assets https://github.com/miracle2k/flask-assets. I added this in my app.py file:

If I understand correctly, these lines are supposed to go check my static/sass folder and generate a gen folder with a single all.css minified file right ? I also created a sass folder inside my static assets folder and foo.scss file inside it with some code to test it out. However when I launch the app, nothing is generated and I get no error. What am I doing wrong here ?

0 投票
1 回答
546 浏览

python - 无法使用 Flask-assets 和 pyscss 从另一个文件夹导入 scss 文件

我在我的烧瓶应用程序中使用 scss 和烧瓶资产。

这是我的 app.py :

我正在使用 load_paths 告诉 flask_assets 去哪里寻找我的文件。这是我项目的基本结构:

文件结构

我的 all.css 已生成。但是,当我尝试从 _fu.scss 文件中的 abstracts 文件夹中导入我的 _variables.scss 时。这是我得到的:

如果我然后将我的变量文件移动到 _fu.scss 所在的基本文件夹中。然后它工作。

这是我的 _fu.scss 文件:

我在这里想念什么?

0 投票
1 回答
157 浏览

python - 关闭调试时由于烧瓶资产管道超时

我有一个基于 Flask 的应用程序,它使用 flask-assets 来捆绑、编译和缩小 css 和 Javascript。当我使用 gunicorn 启动应用程序时发生超时

超时消息指出:

我已经在包含assets.py内容的文件中定义了资产

主应用程序中的相关部分__init__.py

问题是,如何避免超时?是否可以在 gunicorn 开始等待之前预编译资产?

0 投票
1 回答
99 浏览

angularjs - AngularJS - 意外的令牌{

我正在尝试导入服务以在我的控制器中使用它,但在控制台内它显示此错误:

Uncaught SyntaxError: Unexpected token {

我正在使用Flask-Assets缩小javascript文件。

这是我的服务控制器文件内容:

完整的错误路径:

0 投票
1 回答
441 浏览

flask - 如何在烧瓶中缩小 ES2016 或转换为 ES2015?

我正在使用烧瓶资产,并且没有可用的过滤器(rjsmin、jsmin、closure_js、uglifyjs 等)能够缩小 ES2016 JavaScript 文件。缩小的文件会在浏览器控制台上产生错误(由于转换错误),甚至在提供资源之前在执行时崩溃。另外,我已经尝试了来自webassets的 Babel 过滤器,它没有对文件进行任何更改,它们只是在没有更改的情况下提供。

我也无法强制执行闭包或 babel extra_args 来自定义它们的操作。

任何提示或建议?

示例代码:

0 投票
1 回答
63 浏览

flask-assets - 烧瓶资产 append_path() catch-22

我有一个包,其中包含我想在应用程序中重用的静态文件。基于https://webassets.readthedocs.io/en/latest/environment.html#webassets.env.Environment.load_path我想出了以下代码片段,用于每个应用程序__init__.py(共享包是loutilities):

但是当 时ASSETS_DEBUG = False,这会导致在包中找到的文件之一出现 ValueError 异常。(有关详细回溯,请参阅https://github.com/louking/rrwebapp/issues/366 - 这可能与https://github.com/miracle2k/webassets/issues/387有关)。

ValueError: Cannot determine url for /var/www/sandbox.scoretility.com/rrwebapp/lib/python2.7/site-packages/loutilities/tables-assets/static/branding.css

更改代码以使用现在可以正常工作的 url 参数ASSETS_DEBUG = False

但是现在ASSETS_DEBUG = True,我看到文件无法在 javascript 控制台中加载

Failed to load resource: the server responded with a status of 404 (NOT FOUND) branding.css

使用如下不优雅的代码解决了 Catch-22,但想知道如何选择append_path() url对两者都适用的参数ASSETS_DEBUG = TrueFalse.

0 投票
2 回答
168 浏览

python - 在烧瓶资产(网络资产)中编写自定义过滤器

将 Flask 与烧瓶资产(来自 webassets)一起使用,我按照文档为 css 压缩器编写了自己的自定义过滤器。它似乎不起作用:

该类在启动时被调用两次,过滤器是通过它的名字找到的,但input()似乎output()永远不会被调用。创建了 css 文件,但显然没有任何压缩。这个事情谁有经验?

0 投票
0 回答
102 浏览

css - SASS - 使用 pyscss 编译删除方括号

我正在开发一个在烧瓶中开发的网络应用程序。它使用我们正在编译的 SASS,并使用带有以下代码的 flask_assets 库进行捆绑。

在我们开始使用命名网格线之前,一切正常,如下所示

符合 all.css,如在 google chrome 上的 Web 开发人员控制台上所见。

如上所示,pyscss 在编译时似乎删除了 '[]'(方括号)。文档说方括号已被弃用。有什么提示可以解决这个问题吗?使用sass 过滤器会解决这个问题吗?我们也可以通过安装 ruby​​ gem 直接使用这个过滤器吗(或者我们应该安装一个“ruby stack”,我没有使用 ruby​​ 的经验)?libsass -python呢?这会是更好的前进方式吗?提前致谢。

0 投票
3 回答
802 浏览

javascript - 如何使用 Flask 丑化 ES6 javascript?

我正在搜索一个Flask-Assets过滤器,它允许我丑化 javascript 并支持 ES6 语法。我尝试使用uglifyjs-es二进制而不是,uglifyjs但我不知道如何配置我的过滤器以使用uglifyjs-es二进制。

我有这个:

Webassets 文档

UglifyJS 是为 NodeJS 编写的外部工具;此过滤器假定 uglifyjs 可执行文件在路径中。否则,您可以定义UGLIFYJS_BIN设置

也许解决方案就在那里,但我不知道在哪里以及如何更改该UGLIFYJS_BIN设置,知道吗?

另外,我在这里读到该uglifyjs-es项目不再维护。terser 似乎是另一种选择,但它也可以用作过滤器吗?

编辑

如果您知道uglifyjs-es代码示例的一个很好的替代方案,您将赢得赏金;)