Rumah hujung hadapan web tutorial js 实例讲述vue中SPA单页面应用程序

实例讲述vue中SPA单页面应用程序

Jan 19, 2018 pm 01:57 PM
apl muka surat

本文主要为大家详细介绍了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(该文件我已经上传到我的文件中)
②指定一个盛放代码片段的容器


<router-view></router-view>
Salin selepas log masuk

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


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

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


<html>
 <head>
 <meta charset="UTF-8">
 <title></title>
  <script src="js/vue.js"></script>
<!-- 引入文件 -->
  <script src="js/vue-router.js"></script>
 </head>
 <body>
 <p id="container">
    <p>{{msg}}</p>
<!--通过router-view指定盛放组件的容器 -->
    &lt;router-view&gt;&lt;/router-view&gt;
  </p>
  <script>
    var testLogin = Vue.component("login",{
      template:`
        <p>
          <h1>这是我的登录页面</h1>
        </p>
      `
    })
    var testRegister = Vue.component("register",{
      template:`
        <p>
          <h1>这是我的注册页面</h1>
        </p>
      `
    })
    //配置路由词典
    //对象数组
    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"
      }
    })
  </script>
 </body>
</html>
Salin selepas log masuk


<!doctype html>
<html>
 <head>
 <meta charset="UTF-8">
 <title>SPA练习</title>
  <script src="js/vue.js"></script>
  <script src="js/vue-router.js"></script>
 </head>
 <body>
 <p id="container">
    <p>{{msg}}</p>
    &lt;router-view&gt;&lt;/router-view&gt;
  </p>
  <script>
  /*
    需要大家创建一个SPA,这个SPA有3个组件,分别对应的是collect/detail/order
    功能需求:
    在地址栏中路由地址是:
    /myColllect --> 收藏页组件
    /myDetail --> 详情页组件
    /myOrder --> 订单页组件
  */
  /*
    1、引入js文件
    2、创建三个组件,需要返回值
    3、路由词典配置(三小步)const myRoutes、const myRouter、router:myRouter,
    4、指定一个盛放代码片段的容器
          &lt;router-view&gt;&lt;/router-view&gt;
  */
    var testCollect = Vue.component("collect",{
      template:`
        <p>
          <h1>这是收藏页</h1>
        </p>
      `
    })
    var testDetail = Vue.component("detail",{
      template:`
        <p>
          <h1>这是详情页</h1>
        </p>
      `
    })
    var testOrder = Vue.component("order",{
      template:`
        <p>
          <h1>这是订单页</h1>
        </p>
      `
    })
    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"
      }
    })
  </script>
 </body>
</html>
Salin selepas log masuk

相关推荐:

简单了解vue2 单页面如何设置网页title

关于Vue.js如何操作单页面多路由区域的实例分析

H5单页面手势滑屏切换原理

Atas ialah kandungan terperinci 实例讲述vue中SPA单页面应用程序. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn

Tag artikel panas

Notepad++7.3.1

Notepad++7.3.1

Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina

SublimeText3 versi Cina

Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1

Hantar Studio 13.0.1

Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Tidak dapat menyimpan perubahan pada ralat aplikasi Photos dalam Windows 11 Tidak dapat menyimpan perubahan pada ralat aplikasi Photos dalam Windows 11 Mar 04, 2024 am 09:34 AM

Tidak dapat menyimpan perubahan pada ralat aplikasi Photos dalam Windows 11

Ketahui cara menggunakan apl Nota Tanpa Had pada iPhone dan iPad Ketahui cara menggunakan apl Nota Tanpa Had pada iPhone dan iPad Nov 18, 2023 pm 01:45 PM

Ketahui cara menggunakan apl Nota Tanpa Had pada iPhone dan iPad

Foto tidak boleh membuka fail ini kerana format tidak disokong atau fail rosak Foto tidak boleh membuka fail ini kerana format tidak disokong atau fail rosak Feb 22, 2024 am 09:49 AM

Foto tidak boleh membuka fail ini kerana format tidak disokong atau fail rosak

Bagaimana untuk menyalin halaman dalam Word Bagaimana untuk menyalin halaman dalam Word Feb 20, 2024 am 10:09 AM

Bagaimana untuk menyalin halaman dalam Word

Bagaimana untuk menyelesaikan masalah ralat permulaan aplikasi 0xc000012d Bagaimana untuk menyelesaikan masalah ralat permulaan aplikasi 0xc000012d Jan 02, 2024 pm 12:53 PM

Bagaimana untuk menyelesaikan masalah ralat permulaan aplikasi 0xc000012d

Cara menyambungkan Apple Vision Pro ke PC Cara menyambungkan Apple Vision Pro ke PC Apr 08, 2024 pm 09:01 PM

Cara menyambungkan Apple Vision Pro ke PC

Betulkan ralat caa90019 Microsoft Teams Betulkan ralat caa90019 Microsoft Teams Feb 19, 2024 pm 02:30 PM

Betulkan ralat caa90019 Microsoft Teams

MS Paint tidak berfungsi dengan betul dalam Windows 11 MS Paint tidak berfungsi dengan betul dalam Windows 11 Mar 09, 2024 am 09:52 AM

MS Paint tidak berfungsi dengan betul dalam Windows 11

See all articles