笔记本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 href="{{@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。

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

(542)
Decoded:PDF 1.6交叉引用流解码(decoded pdf)
上一篇
学习c4d去哪里好:将动画从 cinema4d导出到搅拌机
下一篇

相关推荐

  • win7和win10哪个cpu占用率高:比较Win7和Win10 CPU占用率的差异

    由于CPU占用率受到操作系统、硬件配置和软件程序的影响,所以无法给出绝对的答案。但是,通常来说,Windows 10比Windows 7更加先进,它的软件优化更好,因此CPU占用率会更低。…

    2023-02-27 04:09:08
    0 68 46
  • android 视频编码深入理解MediaCodec API

    Android 视频编码是指将原始视频数据经过压缩编码后,生成新的视频数据,以便减少视频文件的体积,提高传输速度,以及更好地在 Android 设备上播放。…

    2023-01-13 10:58:18
    0 84 74
  • cv小敢:如何利用CV小敢提升职业技能?

    cv小敢(Computer Vision Tiny-YOLO)是一种轻量级的物体检测算法,它可以在资源受限的设备上运行,如嵌入式设备、智能手机等。它是基于YOLO(You Only Look Once)算法的一个变体,由Joseph Redmon和Ali Farhadi开发,旨在提高深度学习模型的性能,同时减少模型的大小和计算复杂度。…

    2023-02-09 13:08:59
    0 64 98
  • coremail论客邮箱Coremail论客邮箱

    Coremail论客邮箱是一款专业的企业邮箱服务,可以满足企业对安全、可靠性和高效性的要求。它拥有强大的安全性能,可以提供多种安全保护,包括防止邮件被窃取、拦截恶意邮件、防止跨站脚本攻击等。此外,它还支持多种企业级功能,如组织架构管理、收发邮件管理、文件共享管理、联系人管理等,可以帮助企业提高工作效率,提升企业形象。…

    2023-02-25 04:36:55
    0 47 81
  • linux 编译静态库:```ar cr libtest.a *.o```4. 完成!

    我们要创建一个源文件,比如:mylib.c,内容如下:#include…

    2023-03-19 08:46:39
    0 89 21
  • canvas下载安装:Unleash the Power of Canvas to Create Amazing Visuals

    Canvas是一种HTML5技术,可以在网页上创建和绘制2D图形。它是一个JavaScript API,可以使用JavaScript代码来绘制图形,并且可以添加各种效果,如阴影,渐变,动画等。…

    2023-03-08 00:48:14
    0 58 90
  • class定位:The Benefits of Using Class Selectors for Element Locati

    示例示例class定位是一种CSS布局技术,用于指定HTML元素的位置,可以使元素放置在页面的任何位置。代码示例:…

    2023-03-06 07:16:44
    0 54 71
  • cvt加速技巧:如何使用CVT加速技巧提升网络性能?

    cvt加速技巧是一种用于提升计算机程序运行性能的技术。它可以帮助程序员更有效地利用处理器的资源,从而提高程序的性能。cvt加速技巧的主要原理是:在程序运行时,将处理器的资源(如内存、寄存器、流水线等)分解成小块,然后将这些小块重新组合,使其可以更有效地执行程序代码。…

    2023-01-21 04:33:16
    0 83 78

发表评论

登录 后才能评论

评论列表(16条)