如何仅加载一次资产 laravel 5.3?
How Load asset only once laravel 5.3?
如何只加载一次资产。如果我打开仪表板,将加载所有资产,然后我打开其他页面,而不是第二次加载资产..
如何在blade模板中只加载一次资源?
例如:
template.blade.php
@yield('css')
@yield('js')
dashboard.blade.php
@section('css')
//some code here
@endsection
group.blade.php
@section('css')
//some code here
@endsection
有什么帮助吗?
谢谢
为什么要用@yield 加载资产?只需将其加载到您的布局中即可。
例如 app.blade.php 位于 layouts 文件夹中。
app.blade.php
<html>
<head>
<link rel="stylesheets" href="{{asset('css/style.css')}}"/>
<title>title goes here</title>
</head>
<body>
@yield('content')
<script src="{{asset('js/jquery.js')}}"></script>
</body>
</html>
然后在任何视图(例如仪表板)上加载布局
dashboard.blade.php
@extends('layouts.app) //it loads all template data from layouts(app.blade.php)
@section('content')
content for dashboard
@endsection
HTTP 协议不是这样工作的。 HTTP 协议是无状态的,这意味着它不会 记住 用户在访问 group
.
之前访问了 dashboard
您唯一可以保证的是,当用户访问仪表板时,仪表板的 CSS 将被缓存,因此对它们的后续请求将从缓存而不是网络服务器加载它们。
但是,您必须假定用户可以首先访问 group
,因此 all 需要 CSS 群组必须包含在群组模板中,即使这意味着您将为每个页面复制一些 CSS。
如果您真的只想加载每个资产一次,那么您应该使用 JavaScript 库,例如 jquery mobile 来指定通过 AJAX 加载的不同部分。然而,如何以及为什么是一个太宽泛的问题,无法在此处涵盖。
如何只加载一次资产。如果我打开仪表板,将加载所有资产,然后我打开其他页面,而不是第二次加载资产..
如何在blade模板中只加载一次资源?
例如:
template.blade.php
@yield('css')
@yield('js')
dashboard.blade.php
@section('css')
//some code here
@endsection
group.blade.php
@section('css')
//some code here
@endsection
有什么帮助吗? 谢谢
为什么要用@yield 加载资产?只需将其加载到您的布局中即可。 例如 app.blade.php 位于 layouts 文件夹中。
app.blade.php
<html>
<head>
<link rel="stylesheets" href="{{asset('css/style.css')}}"/>
<title>title goes here</title>
</head>
<body>
@yield('content')
<script src="{{asset('js/jquery.js')}}"></script>
</body>
</html>
然后在任何视图(例如仪表板)上加载布局
dashboard.blade.php
@extends('layouts.app) //it loads all template data from layouts(app.blade.php)
@section('content')
content for dashboard
@endsection
HTTP 协议不是这样工作的。 HTTP 协议是无状态的,这意味着它不会 记住 用户在访问 group
.
dashboard
您唯一可以保证的是,当用户访问仪表板时,仪表板的 CSS 将被缓存,因此对它们的后续请求将从缓存而不是网络服务器加载它们。
但是,您必须假定用户可以首先访问 group
,因此 all 需要 CSS 群组必须包含在群组模板中,即使这意味着您将为每个页面复制一些 CSS。
如果您真的只想加载每个资产一次,那么您应该使用 JavaScript 库,例如 jquery mobile 来指定通过 AJAX 加载的不同部分。然而,如何以及为什么是一个太宽泛的问题,无法在此处涵盖。