我正在用angularjs和laravel构建应用程序4.一切都很好但我现在只需要允许XHR请求.
这就是我在控制器开头所拥有的.但这种说法总是错误的.
if (!\Request::ajax())
{
return Response::json(array('halt'=>Request::ajax()));
};
Run Code Online (Sandbox Code Playgroud)
在角度我使用标准的$ http服务.
angular.module('APP')
.factory("API", ($http,$q,appClient,apiURL) ->
class FB
constructor:->
this.deferredData = $q.defer();
info: (reload)->
$http(
method: "get"
url: apiURL+'game/'+appClient+"/info"
).success((res)->
dostuff()
)
Run Code Online (Sandbox Code Playgroud) 好吧,标题可能有点令人困惑,所以让我对这种情况有所了解.我在Blade中有一个包含基本html和导航的基本模板,如下所示:
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge, chrome=1">
@section('title')
<title>Page Title</title>
@show
</head>
<body>
<div id="wrapper">
<header id="logo"></header>
<nav id="mainmenu">
<ul>
<li><a href="page1">Page 1</a></li>
<li><a href="page2">Page 2</a></li>
<li><a href="page3">Page 3</a></li>
<li><a href="page4">Page 4</a></li>
</ul>
</nav>
@yield('content')
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
然后是每个页面的一堆子视图,如下所示:
@extends('layouts.base')
@section('title')
<title>Page 1</title>
@stop
@section('content')
<section class="container clearfix">
<h2 class="section-title">Page 1</h2>
<div class="content">
some content here
</div>
</section>
@stop
Run Code Online (Sandbox Code Playgroud)
现在,我想要的是能够有条件地忽略@extends(),这样我就可以返回一个只是子视图的视图,即类"容器"部分内的所有内容,以便能够将其叠加到使用AJAX进行单页布局或加载.
有关如何实现这一点的任何想法?
我正在使用带刀片的L4.我希望能够有条件地扩展布局.对于正常使用,我想扩展主布局,对于ajax渲染,我希望能够扩展ajax模板.我使用以下代码:
@if ( isset($ajax) )
@extends('layouts.ajax')
@else
@extends('layouts.master')
@endif
Run Code Online (Sandbox Code Playgroud)
但是当页面呈现时它只会打印出@extend('layouts.master').
有谁知道如何有条件地扩展布局或其他?
谢谢