vue中SPA单页面应用程序详解

这次给大家带来vue中SPA单页面应用程序详解,使用vue中SPA单页面应用程序的注意事项有哪些,下面就是实战案例,一起来看一下。

一、SPA的概述

SPA(single page application)单页面应用程序,在一个完成的应用或者站点中,只有一个完整的html页面,这个页面有一个容器,可以把需要加载的代码片段插入到该容器中。

SPA的工作原理:

  eg:  http://127.0.0.1/index.html#/start

①根据地址栏中url解析完整的页面:index.html
  加载index.html

②根据地址栏中url解析#后的路由地址: start
  根据路由地址,去在当前应用的配置中 找该路由地址的配置对象去查找该路由地址 所对应的模板的页面地址
  发起异步请求加载该页面地址

③把请求来的数据加载到指定的容器中

二、通过VueRouter来实现一个SPA的基本步骤

①引入对应的vue-router.js(该文件我已经上传到我的文件中)
②指定一个盛放代码片段的容器


登录后复制

③创建业务所需要的各个组件
④配置路由词典
每一个路由地址的配置对象(要加载哪个页面…)

const myRoutes = [  {path:'/myLogin',component:TestLogin},  {path:'/myRegister',component:TestRegister}  ]  const myRouter = new VueRouter({  routes:myRoutes   })  new Vue({    router:myRouter   })

登录后复制

⑤测试
在地址栏中 输入对应的不同的路由地址 确认是否能够加载对应的

          

{{msg}}

var testLogin = Vue.component("login",{ template:`

这是我的登录页面

` }) var testRegister = Vue.component("register",{ template:`

这是我的注册页面

` }) //配置路由词典 //对象数组 const myRoutes =[ //当路由地址:地址栏中的那个路径是myLogin访问组件 //组件是作为标签来用的所以不能直接在component后面使用 //要用返回值       //path:''指定地址栏为空:默认为Login页面        {path:'',component:testLogin}, {path:'/myLogin',component:testLogin}, {path:'/myRegister',component:testRegister} ] const myRouter = new VueRouter({ //myRoutes可以直接用上面的数组替换 routes:myRoutes }) new Vue({ router:myRouter, //或者: /* router:new VueRouter({ routes:[ {path:'/myLogin',component:testLogin}, {path:'/myRegister',component:testRegister} ] }) */ el:"#container", data:{ msg:"Hello VueJs" } })

登录后复制

   SPA练习       

{{msg}}

/* 需要大家创建一个SPA,这个SPA有3个组件,分别对应的是collect/detail/order 功能需求: 在地址栏中路由地址是: /myColllect --> 收藏页组件 /myDetail --> 详情页组件 /myOrder --> 订单页组件 */ /* 1、引入js文件 2、创建三个组件,需要返回值 3、路由词典配置(三小步)const myRoutes、const myRouter、router:myRouter, 4、指定一个盛放代码片段的容器 <router-view></router-view> */ var testCollect = Vue.component("collect",{ template:`

这是收藏页

` }) var testDetail = Vue.component("detail",{ template:`

这是详情页

` }) var testOrder = Vue.component("order",{ template:`

这是订单页

` }) const myRoutes = [ {path:"",component:testCollect}, {path:"/myColllect",component:testCollect}, {path:"/myDetail",component:testDetail}, {path:"/myOrder",component:testOrder}, ] const myRouter = new VueRouter({ routes:myRoutes }) new Vue({ router:myRouter, el:"#container", data:{ msg:"Hello VueJs" } })

登录后复制

相信看了本文案例你已经掌握了方法,更多精彩请关注【创想鸟】其它相关文章!

推荐阅读:

mint-ui loadmore上拉加载与下拉刷新冲突处理方法

立即学习“前端免费学习笔记(深入)”;

微信小程序怎样使图片上传至服务器

以上就是vue中SPA单页面应用程序详解的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2772131.html

(0)
上一篇 2025年3月8日 13:10:20
下一篇 2025年3月8日 13:10:35

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • angular组件间传值与通信使用详解

    这次给大家带来angular组件间传值与通信使用详解,angular组件间传值与通信的注意事项有哪些,下面就是实战案例,一起来看一下。 本文主要介绍angular在不同的组件中如何进行传值,如何通讯。主要分为父子组件和非父子组件部分。 父子…

    编程技术 2025年3月8日
    200
  • Vue全家桶项目实践详解

    这次给大家带来Vue全家桶项目实践详解,使用Vue全家桶实现项目的注意事项有哪些,下面就是实战案例,一起来看一下。 从前端的角度看,Vue可以说是目前最理想的前端MVVM框架,一切为界面服务,上手难度低,本文就将记录使用Vue全家桶(Vue…

    编程技术 2025年3月8日
    200
  • JS按钮禁用和启用使用详解

    这次给大家带来JS按钮禁用和启用使用详解,使用JS按钮禁用和启用的注意事项有哪些,下面就是实战案例,一起来看一下。 废话不多说了,直接给大家贴代码了,具体代码如下所述: 按钮启用和禁用function btn1(){ document.ge…

    编程技术 2025年3月8日
    200
  • vue中v-model动态使用详解

    这次给大家带来vue中v-model动态使用详解,vue中v-model动态使用的注意事项有哪些,下面就是实战案例,一起来看一下。 前言: 最近在做公司的项目中,有这么一个需求,每一行有一个input和一个select,其中行数是根据服务器…

    编程技术 2025年3月8日
    200
  • vue-resource拦截器设置头信息的步奏详解

    这次给大家带来,的注意事项有哪些,下面就是实战案例,一起来看一下。 使用vue-resource,设置头信息: Vue.http.interceptors.push((request, next) => { request.heade…

    编程技术 2025年3月8日
    200
  • 在vue2中使用ref步奏详解

    这次给大家带来在vue2中使用ref步奏详解,在vue2中使用ref的注意事项有哪些,下面就是实战案例,一起来看一下。 本文介绍了vue2里面ref的具体使用方法,分享给大家,具体如下。 1、我们先定义两个组件 html部分 登录后复制 j…

    编程技术 2025年3月8日
    200
  • AngularJS环境搭建步奏详解

    这次给大家带来AngularJS环境搭建步奏详解,AngularJS环境搭建的注意事项有哪些,下面就是实战案例,一起来看一下。 AngularJS是什么? AngularJS是一个开源Web应用程序框架。它最初是由MISKO Hevery和…

    编程技术 2025年3月8日
    200
  • Require调用js使用详解

    这次给大家带来Require调用js使用详解,Require调用js的注意事项有哪些,下面就是实战案例,一起来看一下。 在我最初开始写 JavaScript 函数时,通常是这样的: function fun1() { // some cod…

    编程技术 2025年3月8日
    200
  • AFN封装网络请求详解

    这次给大家带来AFN封装网络请求详解,AFN封装网络请求的注意事项有哪些,下面就是实战案例,一起来看一下。 相信大家都知道,我们一般在一个项目中,网络请求都封装成一个单例,以确保整个项目的网络请求 Session 是同一个. 单例模式定义:…

    编程技术 2025年3月8日
    200
  • 判断页面是否登陆

    这次给大家带来判断页面是否登陆,判断页面是否登陆的注意事项有哪些,下面就是实战案例,一起来看一下。 如下所示: router.beforeEach((to, from, next) => { if (to.matched.some(r…

    编程技术 2025年3月8日
    200

发表回复

登录后才能评论