问题标签 [assetic]

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 投票
3 回答
3638 浏览

windows - 更少的 Windows Node.js 挂起

我一直在尝试在 Windows 上设置 Symfony2,这样我就可以用更少的资源使用资产。

我已经为 Windows (0.6.8) 安装了 node.js。然后我跑了npm install less --global,发现少了C:\Users\Matt\AppData\Roaming\npm\node_modules

至于我的 Symfony 设置,我有 master 分支Assetic(由于我在 1.0.2 中读到的一个错误),但标准 v1.0.1AsseticBundle

经过一些工作,我能够通过以下方式获得一个更少的文件示例: http://localhost/app_dev.php/css/compiled-main_part_1_boilerplate_1.css

然后我切换了一个 .less 文件,它 @imports 其他 .less 文件(在同一个子目录中)。每当我尝试访问本地服务器上的那个页面时(使用这种较少的配置),它就会挂起,我可以看到一个命令进程和一个 node.exe 进程都在运行。

该命令正在尝试在我的临时目录中存在的 node.js 中运行脚本。我可以在命令提示符下通过 node.js 运行该文件,但我无法使用 Symfony/Assetic 加载它。

无论如何在 Windows 上使用 node.js、less 和资产?

这是我的相关配置文件部分:

开发配置覆盖:

在参数.ini 中:

0 投票
1 回答
823 浏览

twig - 资产、图像资产和缓存

我正在努力将Assetic集成到我正在构建的应用程序中。该应用程序遵循 MVC 模式,但不使用任何框架。Twig用于模板。

我已阅读文档并查看了一些有用的 博客文章

该应用程序的结构如下:

  • 应用
    • 树枝模板
    • js
    • css
  • public_html
    • js
    • css
    • 图片

树枝模板被渲染然后由应用程序返回,所以这很简单。文件夹下的andjs文件夹将保存原始的 javascript 和 css 文件。cssapplication

我的计划是将组合和缩小的 js 和 css 文件存储在public_html 文件夹下的jsand文件夹中。css

由于我不打算使用assetic优化任何图像,它们将直接放在images下面的文件夹中public_html

现在的问题:

  • 我知道通过使用树枝中的资产,可以将组合和缩小的资产导出到我的 public_html 目录:

    在这种情况下,css/all.css每次呈现模板时都会重新生成文件吗?

  • 为了使应用程序可移植(它可以使用虚拟主机托管,或者甚至可以在文件夹中托管)并确保事情在具有路由 URL 之类的站点中工作http://site.com/controller/action,assetic 是否提供无论如何将图像的 URL “重写”为绝对 URL(即images/a.jpg进入http://mysite.com/images/a.jpg)?

  • 使用嵌套模板时资产是否有效?

    parent.twig:

    child.twig:

    在这种情况下,我怎样才能让资产知道它应该合并childstyle.css并将mainstyle.css其作为 1 个文件提供?

0 投票
2 回答
1170 浏览

symfony - 在 symfony2+Assetic 项目中如何在没有 Node.js 的情况下使用 LESS

不要误会我的意思。我知道我们lessc在 php 中甚至有其他编译器(我说的是lessphp)和其他编译器。

但!你知道,我真的很喜欢less.js 的工作方式

我的意思是说...

  • 指向你的less文件
  • 指向 javascript
  • 工作

当你完成

  • 从浏览器获取localStorage版本
  • 将其放入 CSS 文件中。

你有没有想过一种方法来做类似的事情?

0 投票
1 回答
2263 浏览

twig - Assetic 不生成任何文件

我将 Assetic 与 Twig 一起使用,但不是 symfony2 框架。

这是项目的设置方式

原始 css 存储在下面/site/template/css,我希望资产缩小 css 并将其输出到/public_html/css.

这是将资产设置为树枝扩展的方式

然后在我的模板中:

我可以看到assetic在最终输出中生成了一个唯一的url:

但是,如果我查看/public_html/css,文件永远不会生成!

我正在使用带有 apache 的 Windows 7 服务器,PHP 在任何地方写入文件都没有问题。

这可能是什么原因造成的?

0 投票
1 回答
3078 浏览

symfony - Twig 中的 Symfony2 资产动态图像包含

我想为使用 Twig 和 Assetic 的文章加载特定的缩略图。这是不起作用的代码:

在配置和参数中:

在树枝文件中:

所以基本上我有图像存储在 /Resources/public/images/article_thumbs/{ID}/{FILE.ext}

我想为 Twig 中的特定文章获取这些内容。我怎样才能做到这一点?

编辑: 为什么我不把它们放在 web 文件夹中?

我想我曾经考虑过使用 Assetic 过滤器,但我想真的没有必要。

我现在将它们存储在 web 文件夹中。

因此,如果我制作thumbnail_dir="/images/article_thumbs"并将其放在网络目录中,我只是{{ asset( thumbnail_dir ~ '/' ~ id ~ '/' ~ article.thumbnailFile ) }}在树枝中说吗?

0 投票
2 回答
1966 浏览

css - Assetic 的 cssrewrite 和子文件夹

我在 Web 应用程序中使用 Assetic 和 Twig。我没有使用 symfony2 框架。

项目结构如下所示

  • 应用程序

    • 风格
    • 图片
  • 万维网

    • css
    • 图片

我在我的一个模板中使用 Assetic 样式表标签有这个标记:

目前,该应用程序托管在http://localhost/myapp/中,可以通过http://localhost/myapp/www访问它

我编写了一个转储条,它编译我的资产并将它们转储到www.

在我的 CSS 中,我使用绝对路径(有效)引用我的图像:

如果我使用相对路径(使用 cssrewrite 过滤器),则不会重写 URL:

我想直接使用我的 URL images/b.png,然后让资产转储程序确定完整路径。

我启用了 cssrewrite 过滤器,但它似乎没有做任何事情。如何在我的 CSS 中提供相对路径并让 cssrewrite 将其重写为绝对路径?

0 投票
1 回答
1212 浏览

symfony - Symfony2 - 从自定义表单字段类型小部件内部加载带有资产的 JS 文件

所以我需要一个自定义表单字段类型,并且在定义字段代码的块中我需要加载一些带有资产的 JS。

我遇到的问题是 Assetic 生成的资源路径错误并导致 404:

它应该是这样的:

有办法解决这个问题吗?

0 投票
5 回答
16981 浏览

symfony - 在 Symfony2 中为 Assetic 配置输出目录

我想全局配置资产转储我的 JS 文件的输出目录。目前,他们总是去web/js/*。我想将其更改为web/js/compiled/*.

可以在每个文件级别指定它: http: //symfony.com/doc/2.0/cookbook/assetic/asset_management.html#dumping-asset-files

似乎找不到在我的 Symfony 应用程序中全局设置它的方法。我缺少任何配置参数吗?

更新

找到一个名为write_to. 设置它config.yml会导致命令行将assetic:dump文件转储到新目录,但在 twig 文件中asset_urlvar 仍然指向原始路径。

0 投票
1 回答
759 浏览

php - YUICompressor 错误:RuntimeException:文件名、目录名或卷标语法不正确

我试图在我的开发服务器(windows 7)上的 Symfony 2.0.10 上使用带有资产的 YUICompressor,我收到此错误:

RuntimeException: The filename, directory name, or volume label syntax is incorrect.

问题是什么?

我目前的配置如下:

在资产下的 app/config.yml 中。

在我的树枝模板中。

没有其他设置,没有其他任何修改,我一直在关注这篇文章:http ://symfony.com/doc/2.0/cookbook/assetic/asset_management.html

YUICompressor 版本为 2.4.7

PS:Assetic 在没有过滤器的情况下工作得很好,我也试过java -jar yuicompressor.jar ./script.js -o ./test.js了。

0 投票
1 回答
1714 浏览

javascript - Symfony 2 - 资产 JavaScript 压缩导致错误

我正在尝试将 Symfony 2 应用程序置于生产模式。除了压缩的单个 JavaScript 文件会导致错误并使网站无法正确呈现之外,一切都运行良好。我通过浏览器上的调试控制台找到了这个:

未捕获类型错误:未定义不是函数
未捕获类型错误:对象 [对象对象] 没有方法“树视图”

第一个错误是指 jQuery 插件 Treeview 指的是 jQuery 的插件,它呈现树状目录结构。

另一方面,它在开发模式下运行良好,因为它不进行压缩,它只是一个一个地包含每个文件。有人可以帮我解决这个问题吗?