了解单页应用

使用Vue和Flask构建单页应用 在上面的代码中,我们创建了一个基本的Flask应用程序。Vue是一个流行的JavaScript框架,用于构建用户界面,而Flask是一个轻量级的Python Web框架,用于构建后端服务器。现在,当我们访问应用程序的根URL时,将显示Vue应用程序的首页。当我们点击首页上的按钮时,它将向后端发送请求,并在页面上显示从后端获取的数据。现在,我们可以将Vue应用程序构建为静态文件,并将其放置在Flask应用程序的静态文件夹中。在上面的代码中,我们定义了一个名为About的简单组件,它只包含一个标题和一段文字。 阅读详情

1.什么是单页应用

    单页应用是整个webapp就一个html文件,全程无刷新,里面的各个功能页面是javascript通过hash,或者history api来进行路由,并通过ajax拉取数据来实现响应功能,所以叫单页面。

 

2.单页应用的实现

   实际上只在一个页面处理所有业务。但在用户视觉上却呈现多个页面的效果,多个页面的效果由js控制拼接完成,所以本能的浏览器上的历史记录前进后退无效,也因无刷新页面而使用户体验良好

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>
    <!-- 地址  #/  显示  首页界面 -->
    <!-- 地址  #/my  显示  我的音乐界面 -->
    <!-- 地址  #/friend  显示  朋友界面 -->
    <div id="app">
        <!-- 顶部导航 -->
        <nav>
          <a href="#/">首页</a>
          <a href="#/my">我的音乐</a>
          <a href="#/friend">朋友</a>
        </nav>
        <!-- 显示对应界面 需要根据hash地址的不同来渲染-->
        <div id="page">

        </div>
    </div>
    
</body>
<script src="./js/vue.js"></script>
<script>
    // 初始化渲染
    // 1. 获取hash值
    // 2. 判断不同的hash值
    // 3. 页面中插入不同的页面内容
    function render(){
        // 获取hash地址,给 location.hash 赋值就是修改hash地址
        let hash = location.hash;
        //去除#,更美观更像地址
        let path = hash.replace('#','');

        // 判断path渲染不同界面
        switch(path){
            case '/':
                document.getElementById('page').innerHTML = '<b>首页</b>';
                break;
            case '/my':
                document.getElementById('page').innerHTML = '<b>我的音乐</b>';
                break;
            case '/friend':
                document.getElementById('page').innerHTML = '<b>朋友</b>';
                break;
            default:
                break; 
        }
    }

    render();
     // 切换hash的时候渲染
     window.onhashchange = function(){
         // 当hash地址发生改变的时候会执行
         console.log(location.hash)
        // 根据当前的hash重新渲染即可
        render();
     }
    const vm = new Vue({
        el:'#app'
    });
</script>
</html>

  

  3.单页应用的优缺点

优点:
1、前后端分离,前端负责界面显示,后端负责数据存储和计算,各司其职,开发效率更高
2、减轻服务器压力,服务器只需要提供api调用即可,无需处理页面合成及页面逻辑。
3、同一套后端代码,无需即可用于Web界面、手机、平板等多种客户端;
缺点:
1、SEO问题,现在可以通过Prerender等技术解决一部分;
2、前进、后退、地址栏等,需要程序进行管理;
3、书签,需要程序来提供支持;

 

4.其他

不适合做大型网站,维护成本高。

SIwave学习记录:电热耦合仿真 SIwave电热耦合仿真 阅读详情

相关推荐

华大HC32F460从零到200MHz:手把手教你配置时钟系统(附避坑指南)

本文详细解析了华大HC32F460 MCU的时钟系统配置,从启动过程、时钟树分析到实战配置200MHz系统时钟。文章手把手指导开发者如何正确配置外部晶振、MPLL锁相环及总线分频,并提供了硬件检查、代码解读及常见问题排查的避坑指南,帮助用户从零构建稳定可靠的高性能时钟环境。

net55的博客 297

什么是单页应用?它的优缺点?其缺点的解决方案是什么?

文章目录一、什么是单页应用?二、单页应用的优缺点1.优点2.缺点三、单页应用缺点的解决方案 一、什么是单页应用? 从字面上来理解: 单页面应用(SPA--------single page application),一个web项目只有一个页面(即一个HTML文件);一个项目的所有页面的所有内容被分成了很多的小块(即组件),可以重复利用的,可以任意调整的组件,每个组件就是一个独立的部分(包括html,css和javascript代码)。 从使用的过程来理解: 单页面应用指一个系统只加载一次资源,然后下面的操

web-Danli的博客 5996

Vmware虚拟机克隆详解:固定ip + 修改uuid等内容

分两大步 设置固定ip 克隆后修改相关配置 本文引用的其他地方的图片。会附上链接 若侵权,删 一、设置静态ip 先进行虚拟网络的编辑 接下来的操作需要管理员权限。(给权限就完事了) 接下来设置网卡: 网络和共享中心→ 更改适配器设置→VMware Network Adapter VMnet8 -> 右键属性 修改TCP/Ipv4的配置,网上常见是这种,笔者是英文的...

Unknownfuture的博客 9071

单页应用和多页应用的区别

一、定义区分 【1.1】单页应用 单页应用又称 SPA(Single Page Application)指的是使用单个 HTML 完成多个页面切换和功能的应用。这些应用只有一个 html 文件作为入口,一开始只需加载一次 js,css 等相关资源。使用 js 完成页面的布局和渲染。页面展示和功能室根据路由完成的。单页应用跳转,就是切换相关组件,仅刷新局部资源。 【1.2】多页应用 多页应用又称 MPA(Multi Page Application)指有多个独立的页面的应用,每个页面必须重复加载 js

越努力,越幸运! 5581

解决uc浏览器劫持video标签问题

解决uc视频悬浮播放 ,video标签被浏览器劫持 ,vide0适配

smile_y_y的博客 3452

超简单五步实现VOS3000客户端呼入配置

1.查看SIP代理  在注册管理中查看自己线路注册的SIP代理IP地址,记录下来。 2.创建普通账户  创建一个呼入使用的普通账号,选择“计费费率”,根据自己情况选择费率,这里做测试就配置了免费的费率,如果费率不是免费,需要给这个普通账户充值。 3.新建对接网关 新建一个对接网关,点击该网关的“补充设置”,选择“网关类型”为静态IP,然后在IP地址栏填上刚才在注册管理里面记录的SIP代...

非著名运维的博客 1万+

什么是单页面应用(SPA)?大白话介绍

什么是单页应用? 单页Web应用(single page web application,SPA),就是只有一张Web页面的应用,是加载单个HTML 页面并在用户与应用程序交互时动态更新该页面的Web应用程序。 单页面应用的优缺点: 优点: 1、用户操作体验好,用户不用刷新页面,整个交互过程都是通过Ajax来操作。 2、适合前后端分离开发,服务端提供http接口,前端请求http接口获取数据,使用...

qq_36196059的博客 1万+

matlab SAR图像的多视滤波

单视复数数据(Single Look Comple)是原始的最高分辨率数据,但是从单个像元散射的雷达回波信号的相干叠加,导致强度信息有很多噪声。SAR的多视处理是对SLC数据方位向和/或距离向做平均,得到的结果是多视后的强度数据。多视处理可以提高SAR图像的信噪比,有效抑制斑点噪声,但是会降低方位分辨率。

点云侠的博客 534

单页面应用是什么?优缺点?如何弥补缺点

也就是说浏览器一开始会加载它必需的thml、css和js 之后所有的交互操作都在一个页面上完成 这些都是由JavaScript动态的加载合适的内容来响应用户的操作 所以Web单页应用会包含大量的js代码 支持单个页面上与多个组件进行丰富的交互。单页面应用(Single Page Application,SPA)是一种网页应用程序模型,它在加载初始页面后,通过动态地更新页面的部分内容,实现与用户的交互和数据展示,而无需重新加载整个页面。有了单页面应用,才把以前的传统web开发叫作多页面应用。

肥晨开发的学习之路 3156

GFPS技术原理(一)-简介

GFPS(谷歌快速配对服务)利用BLE技术简化设备配对流程,相比传统方式大幅提升用户体验。首次配对时,设备广播包含型号ID和安全密钥的BLE信号,手机检测后弹出配对通知,用户点击即可完成安全连接并将设备与Google账户绑定。该技术支持跨设备同步、电量显示、找回设备等功能,后续配对更加便捷。GFPS通过BLE实现快速发现、一键配对和安全连接,结合Google后端服务提供元数据支持,已成为出海设备的认证标准。其核心优势在于简化操作步骤并增强功能性,特别适合非技术用户群体。

十多年蓝牙协议软件开发,擅长蓝牙协议分析 2062

Unreal Engine开发:多人联机与网络同步_延迟补偿与预测

通过延迟补偿和预测技术,我们可以显著减少网络延迟对多人在线动作游戏的影响,提升玩家的体验。延迟补偿主要在服务器端实现,通过回溯时间点来更准确地处理输入和事件。预测技术主要在客户端实现,通过预先计算玩家的动作结果来减少延迟感。结合这两种技术,可以实现更平滑、更公平的多人游戏体验。

chenlz2007的博客 1191

什么是单页应用

在早期的 Web 应用中,前端的作用很弱,业务逻辑和数据处理都在后端,后端给前端返回一个 HTML 页面,前端只负责展示。在这种模式下,单个 HTML 页面被当做一个功能原件,表单提交,超链接跳转都可以用来重新请求新的 HTML 页面,从而达到给用户展示新的页面的目的。在这种方式中,你可以感觉到页面总是在不停的刷新,一个点击可能都需要等待很久,这是因为,当页面变化时,所有资源都需要重新请求。这些...

weixin_39307273的博客 1014

AF自动对焦 CDAF PDAF

前言 主流的AF: CDAF, PDAF, laser assist AF(这个只是辅助,在微距或者拍摄纹理不明显的场景下好用)。 1.cdaf原理 CDAF的大致原理就是检测图像锐度或者等价于锐度的参数,不断推动马达寻找最清晰点实现合焦或者对焦。如下图: 缺点:对焦准确,速度慢,由于camera帧率,cpu处理速度,马达反映时间问题不能实时对焦运动物体。 2.pdaf原理 计算相位差,将相位差转换为相位差和af code的关系....

camerall 1万+

单页应用---先了解一点

原文链接 一、定义 单页 Web 应用 (single-page application 简称为 SPA) 是一种特殊的 Web 应用。它将所有的活动局限于一个Web页面中,仅在该Web页面初始化时加载相应的HTML、JavaScript 和 CSS。一旦页面加载完成了,SPA不会因为用户的操作而进行页面的重新加载或跳转。取而代之的是利用 JavaScript 动态的变换HTML的内容

u012038144的专栏 1029

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

前端单页应用和多页应用的区别

前端单页应用和多页应用的区别

阳光下的冷静的博客 900

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

【Vue】多页应用VS单页应用

jean_0920的博客 157

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

在没有框架的情况下构建 JavaScript 单页应用程序

Build a JavaScript Single Page App Without a Framework - SitePoint 前端框架很棒。它们抽象出构建单页应用程序 (SPA) 的大部分复杂性,并帮助您随着项目的发展以一种可理解的方式组织代码。 然而,也有不利的一面:这些框架会带来一定程度的开销,并且可能会引入它们自己的复杂性。 这就是为什么在本教程中,我们将学习如何在不使用客户端 JavaScript 框架的情况下从头开始构建 SPA。这将帮助您评估这些框架实际上为您做了什么,以及在什么时

allway2的博客 888

单页应用与前端路由实现(详解)

摘要 本文介绍了单页应用和路由的概念,并介绍了如何用两个技术:hash模式和history模式来实现单页应用的效果。 1. 内容 什么是单页应用 单页应用的特点 用路由来实现单页应用 hash模式 history模式 总结 2. 什么是单页应用 单页应用的英文是single page application,简称SPA。字面含义就是一个应用只有一个页面,这其实是一个很颠覆的概念,有点反常识。按我们一般意义上的理解,一个应用肯定得有多个页面呀。例如:一个新闻网站必须有主页,列表页,详情页等等。我们可能想象

weixin_58384302的博客 613

javascript 框架_在没有框架的情况下构建JavaScript单页应用

javascript 框架 前端框架很棒。 它们消除了构建单页应用程序(SPA)的大部分复杂性,并随着项目的发展,以可理解的方式帮助您组织代码。 但是,还有一个缺点:这些框架具有一定程度的开销,并且可能会引入其自身的复杂性。 这就是为什么在本教程中,我们将学习如何在不使用客户端JavaScript框架的情况下从头构建SPA。 这将帮助您评估这些框架实际上为您做了什么,以及在什么时候使用它才...

873

前端学习(1510):单页应用SPA实现原理

歌谣的博客 446

单页应用程序_在单页应用程序中使用JavaScript遥测的重要性

单页应用程序We typically configure Telemetry and Monitoring for the backend code and infrastructure. It is crucial to capture these data to understand how our environment functions and to trace when somethi...

weixin_26750481的博客 216

React构建单页应用方法与实例

首先在学习这门框架前,你需要对以下知识有所了解:原生JS基础CSS基础npm包管理基础webpack构建项目基础ES6规范以上五个知识点也是目前学习其他前端框架所必须了解的前置任务。JS和CSS就不多说了,npm是目前最提倡也是占据主导地位的包管理工具,还在用bower或者其他工具的童鞋可以考虑下了。而webpack作为新一代打包工具,已经在前端打包工具中独占鳌头,和Browserify相比也有很大优势。至于ES6规范虽然现在主流浏览器还不兼容,但可以使用babel等转换器进行转换。

精选资讯文章 378

在Node.js单页应用程序中添加社交共享

单页应用程序(SPA)由客户端呈现模板提供支持,从而为最终用户带来非常动态的体验。 最近, Google宣布他们 以正常用户的身份对 网页进行爬网并执行JavaScript ,从而使由SPA框架(仅举几个例子,Angular,Ember和Vue)驱动的网站受到了Google的惩罚 。 除搜索之外,其他Web爬网程序对您网站的可见性也很重要-即依赖元标记的丰富的社交共享机器人仍然对JavaS...

代码教主 298

《单页Web应用:JavaScript从前端到后端》——1.2 构建第一个单页应用

本节书摘来自异步社区《单页Web应用:JavaScript从前端到后端》一书中的第1章,第1.2节,作者:【美】Michael S. Mikowski , Josh C. Powell著,更多章节内容可以访问云栖社区“异步社区”公众号查看 1.2 构建第一个单页应用 现在是时候来开发单页应用了。我们将会采取最佳做法,在讲解的同时会进行解释。 1.2.1 ...

weixin_34259159的博客 183

移动前端开发-单页应用(spa)模型

一门新的技术诞生总会引来一番争议,单页Web应用程序也不例外,其最大的优势在于用户体验,对于内容的改动不需要加载整个页面;对服务器压力很小,消耗更少的带宽,与面向服务的架构更好地结合。使用HTML+CSS+JavaScript编写应用程序,能使更多的开发者都加入到程序开发的行列。 单页面应用是指用户通过浏览器加载独立的HTML页面并且无需离开此导航页面,这也是其独特的优势所在。对用户操作来说,一...

weixin_30379531的博客 182

一分钟带你了解VUE重点指令!

Vue.js指令 前言 Vue.js 自身不是一个全能框架–它只聚焦于视图层。因此它非常容易学习,非常容易与其它库或已有项目整合。另一方面,在与相关工具和支持库一起使用时 ,Vue.js 也能完美地驱动复杂的单页应用。 提示:以下是本篇文章正文内容,下面案例可供参考 一、Vue.js是什么? Vue (读音 /vjuː/,类似于 view) 是一套用于构建用户界面的渐进式框架。与其它大型框架不同的是,Vue 被设计为可以自底向上逐层应用。Vue 的核心库只关注视图层,不仅易于上手,还便于与第三方库或既有

weixin_52999343的博客 256
上一篇: json-server的简单安装和使用
下一篇: css样式重置
谭CV
博客等级 码龄9年 73粉丝 85原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值