vue項目移動端商場

一、項目前端頁面展示


二、項目整體目錄結構


三、項目流程
1. vue快速創建基礎項目
創建項目
vue create hk-shop
1
選擇需要的配置


創建基礎文件夾目錄
src文件夾下文件夾目錄:
① views 文件夾存放界面
② components 文件夾存放界面中局部組件
③ config 文件夾存放各種全局配置
④ images 文件夾存放圖片
⑤ plugins 文件夾存放各種插件
⑥ router 文件夾存放路由
⑦ store 文件夾存放vuex相關文件
⑧ service 文件夾存放服務器端相關操作,接口等
⑨ style 文件夾存放樣式

2. 移動端開發——配置FastClick
什么是FastClick?
① FastClick 是一個簡單易用的庫,它消除了移動端瀏覽器上的物理點擊和觸發一個 click 事件之間的 300ms 的延遲 ;
② 目的就是在不干擾你目前的邏輯的同時,讓你的應用感覺不到延遲,反應更加靈敏;
③ 實現原理: 在檢測到touchend事件的時候,會通過DOM自定義事件立即出發模擬一個click事件,
并把瀏覽器在300ms之后真正的click事件阻止掉。

為什么會存在延時?
① 移動端瀏覽器會從你點擊按鈕之后,等待大約 300ms 才會觸發點擊事件
② 原因是瀏覽器會等待看你的行為是否會是雙擊

配置方法
① 將fastclick拉取到項目中 npm i fastclick -S
② 配置方案
Ⅰ直接在main.js中進行配置
main.js

// 1. 引入FastClick
import FastClick from 'fastclick'
// 2. 配置FastClick
if ('addEventListener' in document) {
? ? document.addEventListener('DOMContentLoaded', function () {
? ? ? ? FastClick.attach(document.body);
? ? }, false);
}
1
2
3
4
5
6
7
8


Ⅱ 在plugin文件夾中新建FastClick.js并在其中配置,并將其在main.js中引入

3. 在public文件夾下的index.html中,修改頁面標題(title)和logo(ico)

4. 配置全局樣式
在style文件夾下新建commen.less,并在里面寫好全局樣式
在main.js中引入

5. 搭建主界面
要進行多界面切換,要在views文件夾內進行配置不同界面。在views文件夾下,每一個模塊對應一個子文件夾。home — 主頁、category — 分類、cart — 購物車、mine — 我的、dashboard — 主面板。
在每一個子文件夾(home、category、cart、mine、dashboard)下創建對應的頁面。
舉例:dashboard.vue

6. 配置路由
在router.js中,新建index.js文件夾。

在main.js中,引入router。并將其掛載到Vue對象上。

在新建的index.js中,配置路由

① 在這里,只有DashBoard在界面刷新的時候就加載,其余界面采用懶加載的方式,在點擊跳轉或者訪問的時候才進行加載,便于提升性能。
② dashboard一級路由存在的必要性:為后續注冊登錄等功能提準備。
③ 不直接export default new Router的原因:便于做路由守衛
效果


7. 集成UI組件庫Vant
安裝vant npm i vant –S

安裝babel-plugin-impor支持vant局部引用 npm i babel-plugin-import -D

在babel.config.js中進行配置


在plugins文件夾下,新建vant.js。配置引入不同的vant組件。


在main.js中引入vant.js。需要引入什么組件直接在vant.js中做修改即可。


8. 集成Vant底部Tabbar標簽欄
直接借助官網API快速引入組件


active 當前選中標簽的索引 Number
active-color 選中標簽的顏色 String #000000
inactive-color 未選中標簽的顏色 String #ffffff
replace to 路由跳轉
圖片屬性 :src=“props.active ? icon.active : icon.inactive” 設置選中/非選中圖片
9. 配置首頁界面
(1)在Home.vue中,通過axios請求網絡數據
安裝axios npm i axios -S,并且封裝axios網絡請求

在service文件夾中,新建子文件夾api,并在api中新建文件index.js。負責匯總各種接口。


在api文件夾中新建ajax.js


在ajax.js中封裝axios網絡請求,并以函數ajax的形式向外界暴露

在index.js中,從ajax.js中引入ajax方法


在index.js中,定義接口基礎路徑


在index.js中,定義getHomeData方法,該方法是請求主頁的數據,為get方法,拼接完整URL調用ajax方法發起axios的get請求,并向外界暴露該方法。


在Home.vue中,引入數據請求方法,并在創建組件完成后的created鉤子選項中發起ajax請求。

(2)頂部地址定位、搜索欄
在home文件夾內,新建子文件夾components,存放home.vue的子組件


在子文件夾components中新建header文件夾,在header文件夾內新建Header.vue組件


在Header.vue中將寫好的html即樣式拷貝過來


在Home.vue中引入組件Header.vue

(3)輪播圖(借助Swipervue-awesome-swiper實現)
在home子文件夾components內新建子文件夾sowing,并在sowing文件夾中新建Sowing.vue


安裝vue-awesome-swiper npm install

配置輪播圖
注意:
① 下載最新版本的vue-awesome-swiper可能按照官方文檔有些功能無法使用,可以直接下載低版本
② 配置分頁、自動播放等功能無效的話,引入的時候加入以下代碼。其他功能無效也可以試一下這個。

import Swiper2, {Navigation, Pagination, Autoplay} from 'swiper';

Swiper2.use([Navigation, Pagination, Autoplay]);
1
2
3


如果想在組件中使用或者控制輪播圖,可以在監聽computer中對swiper進行監聽,并在組件的其他地方使用。


將首頁的數據傳輸到輪播圖組件中,并進行渲染


(4)中部導航nav
在home子文件夾components內新建子文件夾nav,并在nav文件夾中新建Nav.vue


將靜態界面放在Nav.vue中,并在Home.vue中引入

將Home.vue中請求到的數據通過props傳遞到Nav.vue,并進行遍歷展示


(5)限時搶購
在home子文件夾components內新建子文件夾flashSale,并在flashSale文件夾中新建FlashSale.vue和FlashSaleItem.vue


將靜態界面放在FlashSale.vue和FlashSaleItem.vue中,并在FlashSale中引入FlashSaleItem,在Home.vue中引入FlashSale


將Home.vue中請求到的數據通過props傳遞到FlashSale.vue,再傳遞到FlashSaleItem.vue,并進行遍歷展示

(6)配置猜你喜歡靜態界面

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/15256.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/15256.shtml
英文地址,請注明出處:http://en.pswp.cn/web/15256.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【排序算法】——歸并排序(遞歸與非遞歸)含動圖

制作不易,三連支持一下吧!!! 文章目錄 前言一.歸并排序遞歸方法實現二.歸并排序非遞歸方法實現 前言 這篇博客我們將介紹歸并排序的原理和實現過程。 一、歸并排序遞歸方法實現 基本思想: 歸并排序(MERGE-…

JS(ES_6)_2

1.創建對象的6種方式&#xff1a; 1. obnew Object() ob.nameah ob.age18 2. ob{name:ah,gae:18} 3.工廠模式&#xff1a; 設計一個函數&#xff0c;專門生產Person類型的對象 <script>function createPerson(name,age,family) {var o new Object();o.name name;o.…

軟件設計師備考 | 案例專題之數據流圖 概念與例題

案例分析專題大綱&#xff1a; 數據流圖基本概念 基本圖形元素&#xff1a;外部實體、加工、數據存儲、數據流 數據流&#xff1a;由一組固定成分的數據組成&#xff0c;表示數據的流向。在DFD中&#xff0c;數據流的流向必須經過加工。加工&#xff1a;描述了輸入數據流到輸出…

啊哈!算法-第2章-棧、隊列、鏈表

啊哈!算法-第2章-棧、隊列、鏈表 第1節 解密qq號——隊列第2節 解密回文——棧第3節 紙牌游戲——小貓釣魚第4節 鏈表第5節 模擬鏈表 第1節 解密qq號——隊列 新學期開始了&#xff0c;小哈是小哼的新同桌(小哈是個大帥哥哦~)&#xff0c;小哼向小哈詢問 QQ 號&#xff0c; 小…

算法提高之線段樹

算法提高之線段樹 存儲方式 線段樹除了最后一層葉子節點以外是一個滿二叉樹類似堆的形式 因此可以用堆來存儲線段樹同時注意到 數組是可以模擬堆的 因此我們可以用一位數組來存儲線段樹 節點編號為u&#xff0c;對應左子樹編號為2 * u&#xff0c;右子樹編號為2 * u 1裝逼一…

C++ 學習 指針上

&#x1f64b; 繼續C Primer 第五版的學習 注 后面還會有關于指針進一步的學習 本篇為基礎篇 &#x1f33f;可以先看看這兩篇 或許可以進一步加深一下對指針的理解 指針和數組 指針簡介 &#x1f308; 上一次講了 C中的引用&#xff0c;現在總結一下指針和引用的主要區別。 …

uniapp微信小程序解決open-type獲取用戶頭像,返回臨時路徑問題!

解決 open-type 為 chooseAvatar&#xff0c;返回臨時路徑問題 文章目錄 解決 open-type 為 chooseAvatar&#xff0c;返回臨時路徑問題效果圖Demo獲取頭像回調數據結構效果圖解決方式上傳到服務器轉base64 基于微信小程序獲取頭像昵稱規則調整后&#xff0c;當小程序需要讓用戶…

深入了解FreeRTOS:實時操作系統的核心概念和應用

前言&#xff1a; 在當今數字化世界中&#xff0c;嵌入式系統扮演著至關重要的角色&#xff0c;從工業自動化到智能設備&#xff0c;無所不在。而實時操作系統&#xff08;RTOS&#xff09;則是這些系統的核心引擎&#xff0c;它們負責管理任務、資源和時間&#xff0c;確保系統…

RmlUi 初試,hello world

前言 最近在研究GUI的各個方面&#xff0c;最后被導向了web render&#xff0c;真的是一言難盡。 這里就其中一個比較有意思的項目 RmlUi 淺試一下&#xff0c;沒想要還挺麻煩&#xff01;這里留下note以供后人參考。 環境搭建 Windows VS2022 pre-binary library 需要指…

高通Android 12/13 設置和獲取ADB狀態

/*** 設置ADB狀態** param isEnable*/public void setADB(boolean isEnable) {Settings.Global.putInt(mContext.getContentResolver(), Settings.Global.ADB_ENABLED, isEnable ? 1 : 0);}/*** 獲取ADB狀態** return*/public boolean getADB() {return Settings.Global.getIn…

虛擬化技術[3]之網絡虛擬化

網絡虛擬化 網絡虛擬化簡介核心層網絡虛擬化接入層網絡虛擬化虛擬機網絡虛擬化案例: VMware網絡虛擬化技術虛擬網絡接口卡虛擬交換機vSwitch分布式交換機端口組VLAN 網絡虛擬化簡介 傳統的數據中心&#xff1a;服務器之間操作系統和上層軟件異構、接口與數據格式不統一&#x…

鏈表相交-力扣

在做這道題時&#xff0c;首先想到的解法是遍歷第一個鏈表&#xff0c;將其全部添加到哈希表中&#xff0c;然后遍歷第二個鏈表&#xff0c;如果能夠再哈希表中查到元素&#xff0c;則返回這個元素&#xff0c;否則返回NULL。 但在實際寫代碼時&#xff0c;第一次寫默認為鏈表相…

Redis實現MQ

MQ的提出 上游發出請求后阻塞等待下游給到反饋&#xff0c;否則整個流程將一直阻塞。 提出mq之后&#xff1a;即有producer mq consumer 三者 MQ的特點 異步解耦 在有了 mq 后&#xff0c;producer 不需要過分關心 consumer 的身份信息&#xff0c;只需要把消息按照指定的協議…

Python 潮流周刊#52:Python 處理 Excel 的資源

本周刊由 Python貓 出品&#xff0c;精心篩選國內外的 250 信息源&#xff0c;為你挑選最值得分享的文章、教程、開源項目、軟件工具、播客和視頻、熱門話題等內容。愿景&#xff1a;幫助所有讀者精進 Python 技術&#xff0c;并增長職業和副業的收入。 本期周刊分享了 12 篇文…

基于hive的酒店價格數據可視化分析系統設計和實現

摘要 本文基于Django框架和Hive技術&#xff0c;設計和實現了一種酒店價格數據可視化分析系 統&#xff0c;旨在為酒店管理者提供直觀、清晰的數據洞察和決策支持。在研究中&#xff0c;首先深入分 析了酒店價格數據可視化分析系統的背景和意義&#xff0c;認識到對于酒店行…

3.Redis之Redis的環境搭建redis客戶端介紹

1.版本的選取 安裝 Redis&#xff1a;Redis 5 系列~~ 在 Linux 中進行安裝~~ Redis 官方是不支持 Windows 版本的~~ 微軟維護了一個 Windows 版本的 Redis 分支 Centos和Ubuntu.Docker 2.如何進行安裝&#xff1f;&#xff1f;&#xff1f; 1.ubuntu 2.centos yum instal…

arcgisPro將一個圖層的要素復制到另一個圖層

1、打開兩個圖層&#xff0c;如下&#xff0c;其中一個圖層中有兩個要素&#xff0c;需要將其中一個要素復制到另一個圖層中&#xff0c;展示如下&#xff1a; 2、選中待復制要素&#xff0c;點擊復制按鈕&#xff0c;如下&#xff1a; 3、下拉粘貼按鈕列表&#xff0c;選擇【選…

利用oracle默認事務隔離級別(提交讀)提升多表聯查速度

利用oracle默認事務隔離級別(提交讀)提升查詢速度) 背景介紹&#xff1a; 數據量大查詢緩慢&#xff0c;添加太多條件&#xff0c;使用IN走了全表查詢導致查詢速度緩慢。 解決方案&#xff1a; 版本一&#xff1a; 新建臨時表&#xff0c;在查詢是將數據插入到臨時表中&#…

Python 根據點云索引提取點云

點云索引濾波 一、介紹1.1 概念1.2 參數設置二、代碼示例三、結果示例一、介紹 1.1 概念 點云索引濾波 是一種常用的點云濾波方法,根據給定的索引列表獲取點云中的索引點,或著根據給定的索引列表獲取點云中的非索引點。 1.2 參數設置 核心函數: def select_by_index(self, …

Ubuntu22.04虛擬機設置靜態IP

虛擬機設置靜態IP 按下電腦的 “win”鍵&#xff0c;在彈出的輸入框中輸入“控制面板”&#xff0c;選中控制面板 1.選擇 “網絡和Internet” 2.選擇 “網絡和共享中心” 3.選擇 “更改適配器設置” 4.選擇 “VMnet8”&#xff0c;雙擊打開 5.選擇 “屬性” 找到 “Internet …