(Vue2)智慧商城项目

news2024/12/26 10:46:26

新增两个目录api、utils

api接口模块:发送ajax请求的接口模块

utils工具模块:自己封装的一些工具方法模块

 第三方组件库vant-ui

PC端:element-ui(element-plus) ant-design-vue

移动端:vant-ui Mint UI(饿了么) Cube UI(滴滴)

按需引入:vant网站中有

1安装npm i vant@latest-v2 -S --legacy-peer-deps

2安装插件npm i babel-plugin-import -D

3babel.config.js配置

module.exports={
  presets:[
    '@vue/cli-plugin-babel/preset'
  ],
  plugins:[
    ['import',{
      libraryName:'vant',
      libraryDirectory:'es',
      style:true
    },'vant']
  ]
}

4main.js按需导入注册

import { Button } from 'vant'
Vue.use(Button)

5测试使用

全部引入:(Vue2项目安装Vant2)npm i vant@latest-v2 -S --legacy-peer-deps

--legacy-peer-deps可以解决下载时候产生的依赖冲突。并没有真的解决冲突,而是忽略了冲突,以“过时”的方式进行下载操作。

基于postcss插件 实现项目vw适配

要求大屏小屏展示效果一样。100vw就是整个屏幕的宽。

设计图中单位是px,如何转换:postcss插件

npm add postcss-px-to-viewport@1.1.1 -D --legacy-peer-deps

// src目录下新建文件postcss.config.js
module.exports = {
  plugins: {
    'postcss-px-to-viewport': {
      //vw适配的标准屏的宽度,iphoneX
      //设计图750,调成1倍=>适配375标准屏幕
      //设计图640,调成1倍=>适配320标准屏幕
      viewportWidth: 375,
    },
  },
};

 路由设计配置

先把文件目录建好,views下建各个页面文件夹,里面放页面

注:name键的值由单引号引

实现底部导航tabbar

vant->Tabbar标签栏->自定义颜色

标签栏支持路由属性,属性里加to='/path'

登录页

@click-left="$router.go(-1)"  后退+刷新

头部导航条默认样式本来是蓝色,自定义通用样式比如说灰色。在浏览器中审查元素,发现其类名,在common.less中为该类设定样式

request模块-axios封装

1新建utils/request.js文件,引入axios

2创建axios实例(axios官网axios实例),将来对创建出来的实例,进行自定义配置

好处:不会污染原始的axios实例

换基地址

return response.data

3自定义配置-请求/响应 拦截器

改axios为instance(axios官网拦截器)

4导出配置好的实例export default instance

5login/index.js中导入,当作普通axios用

async created(){
  const res = await request.get('/path')
}

图形验证码

 login/index中添加数据装返回的图片和验证码,将其绑定显示

图片验证码加入v-if="picUrl"图片加载出来才显示,就不会有还未加载出来的破碎图片显示

api接口模块-封装图片验证码接口

目标:将请求封装成方法,统一存放到api模块,与页面分离

把请求的代码放入api/login.js的函数中封装起来,在页面中按需导入后再调用函数

Toast轻提示

注册安装(vant官网Toast轻提示)

短信验证倒计时

本质上是节流控制

1点击按钮,实现倒计时

main.js中数据添加变量总秒数60,当前秒数60,定时器

绑定点击事件

 2倒计时之前校验处理(手机号、验证码)

手机号正则表达式?

3封装短信验证请求接口,发送请求添加提示

4离开页面时销毁定时器

获取短信验证码

1封装接口:api/login.js中导出发送请求函数

 2调用接口,添加提示

登录功能

ERROR

1浏览器报错:Unchecked runtime.lastError 

解:逐个关闭扩展看是哪一个引起的错误

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1038698.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Vue3最佳实践 第五章 Vue 组件应用 3( Slots )

5.4 Slots 我们已经了解到组件能够接收任意类型的 JavaScript 值作为 props,但组件要如何接收模板内容呢?在某些场景中,我们可能想要为子组件传递一些模板片段,让子组件在它们的组件中渲染这些片段。Slots 可用于将Html内容从父组…

怎么样深入学习一门技术(Python)

进入官网 Python官网文档 https://docs.python.org/zh-cn/ 边敲代码边理解 多看教学视频 狠狠的花时间

Android 使用kotlin+注解+反射+泛型实现MVP架构

一,MVP模式的定义 ①Model:用于存储数据。它负责处理领域逻辑以及与数据库或网络层的通信。 ②View:UI层,提供数据可视化界面,并跟踪用户的操作,以便通知presenter。 ③Presenter:从Model层获…

Securing TEEs With Verifiable Execution Contracts【TDSC`23】

目录 摘要引言贡献 背景Intel SGX侧信道攻击Intel处理器的硬件扩展 概述威胁模型SGX已存的安全威胁侧信道泄露操作系统相关的威胁现有防御的限制 可验证的执行合同作为防御 摘要 最近的研究表明,可信执行环境,如Intel Software Guard Extensions&#x…

Nginx 背锅解析漏洞

Nginx 背锅解析漏洞 文章目录 Nginx 背锅解析漏洞1 在线漏洞解读:2 环境搭建3 影响版本:4 漏洞复现4.1 访问页面4.2 上传文件 4.3 上传失败4.4 使用bp进行分析包4.5 对返回图片位置进行访问4.6 执行php代码技巧-图片后缀加./php4.7 分析原因 --》cgi.fix_pathinfo--…

工艺防错指导、可视化工具管理——SunTorque智能扭矩系统

智能扭矩系统-智能拧紧系统-智能扭矩控制-SunTorque 拧紧的定义——运用拧紧工具及螺栓,使被联接体紧密贴合,并能承受一定的载荷,且被连接体间具备足够的夹紧力,以确保被联接零件的可靠联接和正常工作。 从定义中前六个字“运用…

解读:ISO 14644-21:2023《洁净室及相关受控环境:悬浮粒子采样》发布指导粒子采样!

药品洁净实验室环境监测结果是否满足微生物检测需求,直接决定检测结果的有效性准确性,进行药品微生物检测,必须对实验环境进行日常和定期监测,其内容包括非生物活性的空气悬浮粒子数及有生物活性的微生物监测。 悬浮粒子监测是保证…

python百钱百鸡

编写程序,解决“百钱百鸡”问题。 一只公鸡值五钱,一只母鸡值三钱,三只小鸡值一钱。 源代码: for a in range(1, 101): for b in range(1, 101): for c in range(1, 101): if (a * 5 b * 3 c / 3 100)…

CSRF攻击

防御策略 过滤判断换referer头,添加tocken令牌验证,白名单 CSRF攻击和XSS比较 相同点:都是欺骗用户 不同点: XSS有攻击特征,所有输入点都要考虑代码,单引号过滤 CSRF没有攻击特征,利用的点…

城市智慧公厕:引领科技创新的新时代

城市智慧公厕已经成为当下社会治理模式的升级范式,催生了无限的科技创新。如智慧公厕源头厂家广州中期科技有限公司,所推出的智慧公厕整体解决方案,除基本的厕位监测与引导、环境监测与调节、安全防范与管理、保洁考勤管理、多媒体交互、综合…

数字化转型的五个等级及思考

数字化转型是当前企业和社会关注的热点话题。然而,对于数字化转型的五个等级及其思考,并没有一个清晰的概述。以下是我对数字化转型的五个等级及其思考的简要探讨。 第一等级:基础设施升级 在数字化转型的初始阶段,企业需要对其基…

长期用眼不再怕!NineData SQL 窗口支持深色模式

您有没有尝试过被明亮的显示器闪瞎眼的经历? 在夜间或低光环境下,明亮的界面会导致许多用眼健康问题,例如长时间使用导致的眼睛疲劳、干涩和不适感,同时夜间还可能会抑制褪黑素分泌,给您的睡眠质量带来影响。 这些问…

uni-app:实现picker下拉列表

效果 代码 <template><view class"container"><picker name"info" change"bindPickerChange9" :value"index9" :range"selectDatas9"><view class"right"><view class"right_l…

Nginx负载均衡详解

一、负载均衡介绍 1、负载均衡的定义 单体服务器解决不了并发量大的请求&#xff0c;所以&#xff0c;我们可以横向增加服务器的数量&#xff08;集群&#xff09;&#xff0c;然后将请求分发到各个服务器上&#xff0c;将原先请求集中到单个服务器上的情况改为将请求分发到多…

【EI会议】第三届大数据、人工智能与风险管理国际学术会议 (ICBAR 2023)

第三届大数据、人工智能与风险管理国际学术会议 (ICBAR 2023) 2023 3rd International Conference on Big Data, Artificial Intelligence and Risk Management 第三届大数据、人工智能与风险管理国际学术会议&#xff08;ICBAR2023&#xff09;将于2023年11月24-26日在中国成…

18643 鸡马立克氏病诊断技术

声明 本文是学习GB-T 18643-2021 鸡马立克氏病诊断技术. 而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了鸡马立克氏病临床诊断&#xff0c;以及病毒分离、琼脂免疫扩散试验、PCR 检测和荧光定量 PCR 检测等实验室检测的技术要求…

【通世智库】彭子商:秋风集

我的人生阅历是丰富的&#xff0c;感受是复杂的。 我出生于1949年&#xff0c;父亲是中国老一代旧知识分子&#xff0c;是重庆宽仁医院(教会医院)最后一任院长。【作者&#xff1a;彭子商;来源&#xff1a;通世智库;编撰&#xff1a;张小青】 我同共和国一起成长&#xff0c;经…

开源视频处理软件OBS Studio下载和使用

为了免费使用麦克风降噪功能&#xff0c;可以使用可以使用OBS Studio软件。在清华大学开源软件镜像站提供的OBS Studio镜像源上下载或者上csdn 找我的内容源0积分下载。链接https://download.csdn.net/download/A41915460/88371699 录VCR的时候提取打好纸张发言稿件&#xff0c…

Vue3最佳实践 第五章 Vue 组件应用 5 (Vue 插件)

想了解Vue插件所以你看了官方文档却看不懂&#xff0c;或者你想知道Vue.use()方法和插件的关系。在本文档中&#xff0c;我们将参照文档讲解插件制作的基础知识&#xff0c;了解基础知识后&#xff0c;我们将制作与更实用的下拉菜单和脚本加载相关的插件。读完之后&#xff0c;…