由于Laravel的
Asset Pipeline软件包不允许您有条件地向页面添加脚本/样式表,这样做的最佳方法是什么?
我有一个JavaScript文件,它是一组连接在一起的文件,包含在每个页面上,为我们提供了一个库文件.我现在需要做的是为某些页面添加另一个JavaScript文件(所有页面都使用相同的模板).
我目前的计划是扩展BaseController以添加一个脚本/样式数组,如果有任何项目,可以动态附加到模板.但肯定有一种更好的方式是Asset Pipeline包的一部分吗?
解决方法
它没有使用资产管道,但我使用的解决方案是Blade模板中的@parent指令.
在我的网站上,我在每个页面都有几个js和几个css(例如Twitter引导程序),我有一个包含这些内容的Blade布局.
然后在某些页面上(我的应用程序是分析应用程序)我需要包含特定于页面的资产(例如图表库).
因此,在我的布局上,我有:
@section('js') {{ HTML::script('js/a.js') }} @show @section('css') {{ HTML::style('css/a.css') }} @show
@extends('layouts.site') @section('js') @parent {{ HTML::script('js/b.js') }} @stop @section('css') @parent {{ HTML::style('css/b.css') @stop
这对我很有用.我的应用程序中的子页面非常具体,他们需要哪些额外的资产,因此以这种方式控制它们是非常可行的.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。