我在 Symfony 2 和 MopaBootstrapBundle 中使用较少的资产。
动态生成的 css 文件似乎有效,但未应用样式。如果我们转储资产,那么它确实可以在 prod 中使用,但我不想在 dev 中这样做,因为这与我的想法背道而驰。
配置.yml:
assetic:
debug: %kernel.debug%
use_controller: false
bundles: [ MopaBootstrapBundle ]
#java: /usr/bin/java
filters:
cssrewrite: ~
less:
node: /usr/local/bin/node
node_paths: [/usr/local/lib/node_modules]
# auto apply less to all .less files
apply_to: "\.less$"
config_dev.yml
assetic:
use_controller: true
在我的模板中是:
{% stylesheets
'@MopaBootstrapBundle/Resources/public/less/mopabootstrapbundle.less'
%}
<link href="{{ asset_url }}" type="text/css" rel="stylesheet" media="screen" />
呈现的html是:
<link href="/app_dev.php/css/bab9907_mopabootstrapbundle_1.css" type="text/css" rel="stylesheet" media="screen" />
此文件解析,我可以将 URL 粘贴到地址栏中并查看有效的 CSS 文件。
此外,如果我们将资产倾销到产品中,它也可以工作
app/console assetic:dump --env=prod
我们清除 prod 缓存并设置输出样式。在开发中,我得到零样式。
我也跑过:
app/console assets:install --symlink web
Installing assets using the symlink option
Installing assets for Symfony\Bundle\FrameworkBundle into web/bundles/framework
Installing assets for Mopa\Bundle\BootstrapBundle into web/bundles/mopabootstrap
Installing assets for Symfony\Bundle\WebProfilerBundle into web/bundles/webprofiler
Installing assets for Sensio\Bundle\DistributionBundle into web/bundles/sensiodistribution
所有这些都是同上的 Javascript(当 URL 被跟踪时文件解析)
难道我做错了什么?