91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

vue中怎么利用SPA實現一個單頁面應用

發布時間:2021-07-09 14:31:31 來源:億速云 閱讀:156 作者:Leah 欄目:web開發

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>

③創建業務所需要的各個組件
④配置路由詞典
每一個路由地址的配置對象(要加載哪個頁面...)

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

⑤測試
在地址欄中 輸入對應的不同的路由地址 確認是否能夠加載對應的<!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>
 <div id="container">
    <p>{{msg}}</p>
<!--通過router-view指定盛放組件的容器 -->
    <router-view></router-view>
  </div>
  <script>
    var testLogin = Vue.component("login",{
      template:`
        <div>
          <h2>這是我的登錄頁面</h2>
        </div>
      `
    })
    var testRegister = Vue.component("register",{
      template:`
        <div>
          <h2>這是我的注冊頁面</h2>
        </div>
      `
    })
    //配置路由詞典
    //對象數組
    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>
<!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>
 <div id="container">
    <p>{{msg}}</p>
    <router-view></router-view>
  </div>
  <script>
  /*
    需要大家創建一個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:`
        <div>
          <h2>這是收藏頁</h2>
        </div>
      `
    })
    var testDetail = Vue.component("detail",{
      template:`
        <div>
          <h2>這是詳情頁</h2>
        </div>
      `
    })
    var testOrder = Vue.component("order",{
      template:`
        <div>
          <h2>這是訂單頁</h2>
        </div>
      `
    })
    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>

看完上述內容,你們掌握vue中怎么利用SPA實現一個單頁面應用的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

西吉县| 南乐县| 铜陵市| 新丰县| 定陶县| 营口市| 芜湖市| 和静县| 红河县| 新建县| 富平县| 泾川县| 绩溪县| 榕江县| 江城| 独山县| 五大连池市| 房山区| 清原| 崇仁县| 洪江市| 九龙坡区| 津南区| 通州区| 新平| 资阳市| 佛冈县| 郁南县| 赣州市| 吉林省| 安龙县| 曲靖市| 资兴市| 准格尔旗| 江城| 新密市| 青铜峡市| 泸州市| 黑河市| 日土县| 湖北省|