Vue學(xué)習(xí)(一)-- Nuxt.js搭建美團網(wǎng)--[Header,Footer模塊搭建]

歡迎閱覽

作者介紹:
本人Java特工,代號:Cris Li ; 中文名:克瑞斯理
簡書地址: http://www.itdecent.cn/u/c508b0afaaee
CSDN地址: https://blog.csdn.net/jianli95
個人純潔版博客: https://lijian69.github.io/blog/


最終的項目圖,如圖所示:


image.png

這里只是附加代碼和功能;具體需要有一些基礎(chǔ)Vue基礎(chǔ)的人

一、搜索相關(guān)的功能點

input 獲得焦點觸發(fā)事件、和失去焦點觸發(fā)事件、異步查詢事件,頁面的展示事件、

<template>
  <div class="search-panel">
    <el-row class="m-header-searchbar">
      <el-col
        :span="3"
        class="left">
        <img
          src="http://s0.meituan.net/bs/fe-web-meituan/e5eeaef/img/logo.png"
          alt="美團">
      </el-col>
      <el-col
        :span="15"
        class="center">
        <div class="wrapper">
          <el-input
            v-model="search"
            placeholder="搜索商家或地點"
            @focus="focus"
            @blur="blur"
            @input="input"/>
          <button class="el-button el-button--primary"><i class="el-icon-search"/></button>
          <dl
            v-if="isHotPlace"
            class="hotPlace">
            <dt>熱門搜索</dt>
            <dd
              v-for="(item,idx) in hotPlace"
              :key="idx">
              <a :href="'/products?keyword='+encodeURIComponent(item.name)">{{ item.name }}</a>
            </dd>
          </dl>
          <dl
            v-if="isSearchList"
            class="searchList">
            <dd
              v-for="(item,idx) in searchList"
              :key="idx">
              <a :href="'/products?keyword='+encodeURIComponent(item)">{{ item }}</a>
            </dd>
          </dl>
        </div>
        <p class="suggest">
          <a
            v-for="(item,idx) in hotPlace"
            :key="idx"
            :href="'/products?keyword='+encodeURIComponent(item)">{{ item }}</a>
        </p>
        <ul class="nav">
          <li><nuxt-link
            to="/"
            class="takeout">美團外賣</nuxt-link></li>
          <li><nuxt-link
            to="/"
            class="movie">貓眼電影</nuxt-link></li>
          <li><nuxt-link
            to="/"
            class="hotel">美團酒店</nuxt-link></li>
          <li><nuxt-link
            to="/"
            class="apartment">民宿/公寓</nuxt-link></li>
          <li><nuxt-link
            to="/"
            class="business">商家入駐</nuxt-link></li>
        </ul>
      </el-col>
      <el-col
        :span="6"
        class="right">
        <ul class="security">
          <li><i class="refund"/><p class="txt">隨時退</p></li>
          <li><i class="single"/><p class="txt">不滿意免單</p></li>
          <li><i class="overdue"/><p class="txt">過期退</p></li>
        </ul>
      </el-col>
    </el-row>
  </div>
</template>

<script>
    export default {

        data() {
            return {
                isFocus:false,
                search:null,
                hotPlace:["火鍋","火鍋1","火鍋2","火鍋3","火鍋4"],
                searchList:["故宮","頤和園"]
            }
        },

        computed:{
            isHotPlace:function () {
                return this.isFocus && !this.search;
            },
            isSearchList:function(){
                return this.isFocus && this.search;
            }
        },
        methods:{
            focus:function(){
                this.isFocus = true;
            },
            blur:function () {
                var that = this;
                // 延時方式點擊時 點擊不了
                that._timer = setTimeout(function (params) {
                    that.isFocus = false;
                },200);
                //如果讓延時無效 可以使用 
                //clearTimeout(that._timer)
            },
            input:function(){
                console.log("input");
            }
        }

    }
</script>

<style lang="scss">
    
</style>

選擇自定義模板

前面章節(jié)已經(jīng)提起到Layouts目錄下存放的是頁面的自定義模板,如果想使用現(xiàn)在Layouts目錄下自定義一個模板vue文件,如下所示

<template>
    <div class="layout-blank">
        <nuxt  /> //這里存放你的二級頁面
    </div>
</template>
<script>
    export default {
        
    }
</script>

二級頁面如何向自定義模板中塞進去

<template>
    <div>
        1
    </div>
</template>
<script>
export default {
    layout:'blank' //這里選擇該頁面應(yīng)該塞到那個模板中
}
</script>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容