笔记本cpu硅脂多久换一次:在无脂框架中加载布局一次(fat loading)

我认为这应该有一个非常简单的解释,但我仍在学习 Fat-Free Framework(F3):如何仅渲染一次页眉和页脚并切换所选路线的内容代码?

$f3->route('GET /',
  function($f3) {
    $f3->set('content','views/welcome.htm');
    $f3->set('page_head', 'Welcome');
  }
);

如果我添加这一行:

echo View::instance()->render('layouts/header+footer.htm');

在路由中的f3->set调用之后或在 index.php 文件末尾的$f3->run();之后,整个页面在路由更改时刷新。我不能在路由代码之前调用上面的echo行,而不会在内容框中抛出错误。

有什么方法可以禁用页面刷新吗?它被刷新是因为我的链接被浏览器解释为单独的页面吗?谢谢任何帮助!

2

你的问题有点模糊。但我会尽量用我理解的方式回答。首先你的index.php

$f3->route('GET /',
  function($f3) {
    $f3->set('content','views/welcome.htm');
    $f3->set('page_head', 'Welcome');
    echo Template::instance()->render('layouts/header+footer.htm');
  }
);
$f3->run();
In yourheader+footer.htm
<!DOCTYPE html>
<html>
<head lang="en">
    <meta cht="UTF-8">
    <title>{{@page_head}}</title>
</head>
<body>
<include xxx="{{@content}}"/>
</body>
</html>

您的views/welcome.htm可以包含任何内容。

<h1>Welcome</h1>
<p>You have arrived to the welcome page</p>

请记住文件夹viewslayouts应该在UI文件夹中

$f3->set('UI','ui/'); 

关于您的评论:您可以从$f3->get('PARAMS')访问请求的参数,也可以这样做。

$f3->route('GET /@page',
      function($f3,$params) {
        $page = $params['page'];
        $f3->set('content','views/'. $page .'.htm');
        $f3->set('page_head', 'Welcome');
        echo Template::instance()->render('layouts/header+footer.htm');
      }
    );

这应该有效

1

如果您希望只更新网页的一部分,而不进行完全刷新,则需要使用 AJAX。

首先阅读:https://fatfreeframework.com/3.6/routing-engine#AJAXandSynchronousRequests

你需要在前端使用 javascript 来完成这项工作。如果你不知道如何在 javascript 中编码,那么你可以从阅读开始:

https://www.w3schools.com/js/js_ajax_intro.asp

您可能会发现使用 Jquery 更容易,这是一个非常受欢迎的 javascript 库。

https://www.w3schools.com/jquery/jquery_ref_ajax.asp
0

也许创建自己的 View 实例并使用类似于 PHPTal Filters 的功能扩展 main 也不错。然后你可以在 preFilter 中设置 Header,在 postFilter 中设置 Footer,并扩展 render () 函数。扩展的 render () 将为您一起呈现所有内容,包括页眉,页脚和正文内容。

我个人没有任何反对 FatFree 视图,但会建议 PHPTal 作为模板引擎-这里只是实现https://github.com/creoLIFE/FatFree-PHPTAL,包括从单独的文件提供的 Header / Footer。

本站系公益性非盈利分享网址,本文来自用户投稿,不代表边看边学立场,如若转载,请注明出处

(289)
Ios邮箱怎么添加qq邮箱:iOS14 ExchangeOnline共享邮箱
上一篇
Pauses:HP WebInspect扫描暂停
下一篇

相关推荐

发表评论

登录 后才能评论

评论列表(73条)