最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

VUE搭建手機(jī)商城心得和遇到的坑

 更新時(shí)間:2019年02月21日 14:31:56   作者:MrXu_  
這篇文章主要介紹了VUE搭建手機(jī)商城心得和遇到的坑,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

從github上看了一下第一次提交時(shí)間是2018年10月22號(hào)。到現(xiàn)在將近4個(gè)月時(shí)間,總算是一點(diǎn)一滴的自己一個(gè)人完成了這個(gè)使用vue做的商城項(xiàng)目。以前看到別人做的這種項(xiàng)目就很羨慕,想著自己也做一個(gè),曾經(jīng)的憧憬如今總算實(shí)現(xiàn)了。一路做過(guò)來(lái)踩了不少坑,這篇文章就是分享我遇到的這些坑,希望前人爬坑,后人避免。

項(xiàng)目訪(fǎng)問(wèn)地址xuyuechao.top

vue單頁(yè)模式需要注意的坑

1.class樣式?jīng)_突問(wèn)題

由于是單頁(yè)面應(yīng)用。你在每個(gè)組件里面寫(xiě)入的樣式最終都會(huì)作用到全局里面去,導(dǎo)致樣式?jīng)_突問(wèn)題。而每個(gè)組件都必須提供一個(gè)包裹性質(zhì)的元素,建議這個(gè)元素設(shè)置一個(gè)單獨(dú)的class用于包裹里面的其他class從而避免樣式?jīng)_突

2.靜態(tài)資源倆種處理方式需要理解到位

這個(gè)在Vue官方文檔上有詳細(xì)的說(shuō)明,但是我一開(kāi)始沒(méi)有理解到位。走了一些個(gè)彎路。這里對(duì)Vue官方的內(nèi)容提煉一個(gè)重點(diǎn):
1.public中的內(nèi)容必須用絕對(duì)路徑引入也就是以'/'開(kāi)頭。否則將會(huì)被認(rèn)為是一個(gè)模塊引用會(huì)被webpack處理。注意:項(xiàng)目如果不是放在根域名下需要如下處理:

<template>
  <img src=`${publicPath}MrXu.jpg`>
</template>
<script>
export default {
  data() {
    return {
      publicPath: process.env.BASE_URL
    }
  }  
}
</script>

2.采用相對(duì)路徑引入,方式多樣,如:

1.<img src='@/MrXu.jpg'>
2.<img src='~MrXu.jpg'>
3.<img src='./MrXu.jpg'>

第一種方式用到的@代表的是別名的值

第二種方式用到的~其后的任何內(nèi)容都會(huì)作為模塊請(qǐng)求被解析。官方說(shuō)可以引用Node模塊中的資源,這個(gè)我還沒(méi)用過(guò)。等以后用過(guò)了有更深的見(jiàn)解會(huì)再來(lái)補(bǔ)充

第三種方式就是標(biāo)準(zhǔn)的相對(duì)路徑引入方式

注意千萬(wàn)不要用下面這種相對(duì)路徑引入方式,因?yàn)樗粫?huì)被webpack處理。而是直接采用的相對(duì)路徑尋找文件。而當(dāng)下的目錄是會(huì)被處理的。這種方式一用一個(gè)錯(cuò)

<img src='MrXu.jpg'>

我的建議是盡可能采用相對(duì)路徑引入。減少@的使用。因?yàn)槲医?jīng)過(guò)測(cè)試發(fā)現(xiàn)css和js文件是不支持@的使用的。

項(xiàng)目中對(duì)vue屬性的巧妙運(yùn)用

1.使用computed監(jiān)聽(tīng)購(gòu)物車(chē)內(nèi)容的修改

購(gòu)物車(chē)算是整個(gè)項(xiàng)目中比較復(fù)雜的地方之一了,刪除,添加,選中,取消選中。這些個(gè)操作都會(huì)對(duì)總金額的計(jì)算產(chǎn)生影響,所以我用computed監(jiān)聽(tīng)這些變化完成了總金額的計(jì)算以及全選按鈕的變化

computed: {
  totalPrice() {
   var total = 0;
   this.shops.map(value => {
    if (value.check) total += value.num * value.price;
   });
   return total;
  },
  isAllCheck() {
   var newLength = this.shops.filter(value => {
    return value.check;
   }).length;

   return newLength === this.shops.length ? true : false;
  }
 }

2.使用filter完成了對(duì)訂單狀態(tài)的顯示

項(xiàng)目中訂單的狀態(tài)多大7種,剛開(kāi)始在html里面使用了三目運(yùn)算符做的判斷顯示,顯示效果極差,而且維護(hù)困難。但是采用filter不僅漂亮的多,后期的維護(hù)以及擴(kuò)展都一幕了然

filters: {
  statusToText(value) {
   let reValue;
   switch (value) {
    case 1:
     reValue = "代付款";
     break;
    case 2:
     reValue = "代發(fā)貨";
     break;
    case 3:
     reValue = "待收貨";
     break;
    case 4:
     reValue = "已完成";
     break;
    case 5:
     reValue = "已取消";
     break;
    case 6:
     reValue = "售后處理";
     break;
   }
   return reValue;
  }
 }

感言

做完這個(gè)項(xiàng)目收獲真的蠻頗多的,像route的母子路由,路由懶加載,別名設(shè)置,路由攔截,vuex中actions,mutations,state的區(qū)別,vue的生命周期,父子組件傳值,watch,computed等等。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • Vue 解決在element中使用$notify在提示信息中換行問(wèn)題

    Vue 解決在element中使用$notify在提示信息中換行問(wèn)題

    這篇文章主要介紹了Vue 解決在element中使用$notify在提示信息中換行問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-11-11
  • webpack配置導(dǎo)致字體圖標(biāo)無(wú)法顯示的解決方法

    webpack配置導(dǎo)致字體圖標(biāo)無(wú)法顯示的解決方法

    下面小編就為大家分享一篇webpack配置導(dǎo)致字體圖標(biāo)無(wú)法顯示的解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-03-03
  • vue實(shí)現(xiàn)頂部菜單欄

    vue實(shí)現(xiàn)頂部菜單欄

    這篇文章主要為大家詳細(xì)介紹了vue實(shí)現(xiàn)頂部菜單欄,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2020-11-11
  • vue框架和react框架的區(qū)別以及各自的應(yīng)用場(chǎng)景使用

    vue框架和react框架的區(qū)別以及各自的應(yīng)用場(chǎng)景使用

    這篇文章主要介紹了vue框架和react框架的區(qū)別以及各自的應(yīng)用場(chǎng)景使用,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-10-10
  • vueCli?4.x升級(jí)5.x報(bào)錯(cuò):Progress?Plugin?Invalid?Options的解決方法

    vueCli?4.x升級(jí)5.x報(bào)錯(cuò):Progress?Plugin?Invalid?Options的解決方法

    本文主要介紹了vueCli?4.x升級(jí)5.x報(bào)錯(cuò):Progress?Plugin?Invalid?Options的解決方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2024-01-01
  • 基于vue封裝一個(gè)帶眼睛的密碼子組件

    基于vue封裝一個(gè)帶眼睛的密碼子組件

    這篇文章給大家介紹了基于vue封裝一個(gè)帶眼睛的密碼子組件的方法,文章中有詳細(xì)的代碼講解,對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下
    2023-09-09
  • vue自定義封裝指令以及實(shí)際使用

    vue自定義封裝指令以及實(shí)際使用

    市面上大多數(shù)關(guān)于Vue.js自定義指令的文章都在講語(yǔ)法,很少講實(shí)際的應(yīng)用場(chǎng)景和用例,下面這篇文章主要給大家介紹了關(guān)于vue自定義封裝指令以及實(shí)際使用的相關(guān)資料,需要的朋友可以參考下
    2022-01-01
  • vue props對(duì)象validator自定義函數(shù)實(shí)例

    vue props對(duì)象validator自定義函數(shù)實(shí)例

    今天小編就為大家分享一篇vue props對(duì)象validator自定義函數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-11-11
  • 詳解Vue CLI 3.0腳手架如何mock數(shù)據(jù)

    詳解Vue CLI 3.0腳手架如何mock數(shù)據(jù)

    這篇文章主要介紹了詳解Vue CLI 3.0腳手架如何mock數(shù)據(jù),小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2018-11-11
  • Vue ECharts圖表通用配置詳解

    Vue ECharts圖表通用配置詳解

    這篇文章主要介紹了Vue ECharts圖表通用配置,Echarts,它是一個(gè)與框架無(wú)關(guān)的 JS 圖表庫(kù),但是它基于Js,這樣很多框架都能使用它,例如Vue,估計(jì)IONIC也能用
    2022-12-12

最新評(píng)論

忻城县| 博客| 上饶市| 义乌市| 龙泉市| 榕江县| 固镇县| 阿尔山市| 阿克苏市| 上高县| 南召县| 介休市| 龙岩市| 盘山县| 安宁市| 南涧| 东平县| 盈江县| 临海市| 淮南市| 固始县| 图木舒克市| 准格尔旗| 姜堰市| 合肥市| 苗栗市| 福建省| 九寨沟县| 日喀则市| 平陆县| 芦山县| 綦江县| 兴安县| 北碚区| 丰都县| 太谷县| 鹤峰县| 金湖县| 彰化县| 海门市| 澄城县|