Vue组件化京东金融项目实战详细笔记二:css模块化,js组件化,自适应等原理概念

面向金融场景的 Vue.js 移动端组件库 mand-mobile mand-mobile 详细介绍mand-mobile 是一个面向金融场景的 Vue.js 移动端 UI 组件库。体验地址安装npm install mand-mobile --save导入使用 babel-plugin-import 或者 ts-import-plugin (Recommended)import { Button } from 'mand-mobile'手动导入import Bu... 阅读详情

一、概述

1、css模块化设计

设计原则
可复用:每一个样式都要最大限度的实现可复用性
能继承:每个样式尽量可以让其他样式继承
要完整:样式要完整,不要缺斤少两,让继承样式来补充
周期性迭代:不可能一步到位,要周期性的补充完善
设计方法
先整体化
后部分化
再颗粒化
考虑规则
先确定布局
确定多少个页面,每个页面是什么风格,有多少可重用代码
每个页面的功能
业务流程

2、css模块设计举例

在这里插入图片描述

先布局

在这里插入图片描述

文件举例
reset.scss用来设计不同浏览器兼容css样式
layout.scss用来存放布局样式
element.scss用来存放按钮,组件等样式
global.scss引入element.scss模块,实现复用继承

3、JS组件设计

设计原则
高内聚:任何一个组件内容,尽量封装到组件本身,每个组件不依赖于任何其它组件
低耦合:假如有两个基本相同的组件,我们不能让这两个组件有直接联系,而是要将他俩共有的部分抽象成一个抽象组件,然后共同继承这个抽象组件,实现低耦合
周期性迭代:和css一样,不可能一步到位,要周期性的补充完善
设计方法
先整体化
后部分化
再颗粒化

二、编写Sass模块化

我们先确定布局
@charset "UTF-8";//使用UTF-8编码

@mixin flex($direction:column,$inline:block){
	display: if($inline==block,flex,inline-flex);//如果inline不是默认值,采用inline-flex布局
	flex-direction: $direction;//定义布局方向,默认为列
	flex-wrap: wrap;//让弹性盒元素必要的时候拆行
}

在这里插入图片描述

然后到组件
@import "./layout.scss";//引入布局模块

//按钮
@mixin btn($size:14px,$color:#ffffff,$bgcolor:#F04752,$padding:5px,$radius:5px) {
	//动态样式
	padding: $padding;
	background-color: $bgcolor;
	border-radius: $radius;
	border: 1px solid $bgcolor;
	font-size: $size;
	color: $color;
	//静态样式
	text-align: center;
	line-height: 1;
	display:inline-block;
}
//列表
@mixin list($direction:cloumn) {
	@include flex($direction);//引用混合样式,传入布局方向
}
//面板
@mixin panel($bjcolor:#fff,$padding:0,$margin:20px 0,$height:12px,$textPadding:0 32px,$color:#333,$fontSize:32px) {
	background-color: $bjcolor;
	padding: $padding;
	margin: $margin;
	>h4{//面板里面的标题
		height: $height;//高
		line-height: $height;//行高
		text-overflow: ellipsis;//如果内容过长设置一个...显示
		white-space: nowrap;//不进行换行
		overflow: hidden;//超出内容隐藏
		text-align: center;//标题居中
		color: $color;//颜色
		font-size: $fontSize;//字体大小
	}
}

在这里插入图片描述

三、自适应

1、基本概念

GitHub详细解释:https://github.com/jawil/blog/issues/21
CSS像素
虚拟像素,可以理解为“直觉”像素,CSS和JS使用的抽象单位,浏览器内的一切长度都是以CSS像素为单位的,CSS像素的单位是px
px它是图像显示的基本单元,既不是一个确定的物理量,也不是一个点或者小方块,而是一个抽象概念
设备像素(DP)
真实的物理像素,由显卡提供物理像素点(具体多少看显卡性能,以及其它因素),我们代码中height:1px width:1px
就相当于一个物理像素点
顾名思义,显示屏是由一个个物理像素点组成的,通过控制每个像素点的颜色,使屏幕显示出不同的图像,屏幕从工厂出来那天起,它上面的物理像素点就固定不变了,单位pt。
逻辑像素
和CSS像素差不多,不是真实的物理像素,而是人为判定的逻辑尺寸
设备像素比DPR(device pixels ratio)
设备像素比(dpr 描述的是未缩放状态下,物理像素和CSS像素的初始比例关系
设备像素比(dpr) 是指在移动开发中1个css像素占用多少设备像素,如2代表1个css像素用2x2个设备像素来绘制。
设备像素比(dpr),公式为1px = (dpr)^2 * 1dp,可以理解为1px由多少个设备像素组成;
viewport
viewport是非常重要的概念,分为三类
1、layout viewport 网站原始大小
document.documentElement.clientWidth可以获取layout viewport的宽度值
2、visual viewport 你浏览器的大小
window.innerWidth可以获取visual viewport的宽度
3、ideal viewport 完美适配你设备的尺寸
此类没有固定的一个宽度,和你设备宽度一致
rem和em的区别
rem是根据项目根标签确定单位,也就是< html>标签的font-size属性
em是根据它父级标签确定单位

2、工作原理

由上面的viewport和设备像素比概念可知
当你网页的设计尺寸宽度为320px,dpr=2,那么实际宽度为640
设备尺寸宽度为375像素,dpr=3,那么宽度为1125
那么响应的比例就是1125/640
这样我们就知道现在的设备上宽度应该自适应成什么样子
某课网 前端面试项目冲刺 京东金融Vue组件化实战 vue实战视频 无快进完整版 某课网 :前端面试项目冲刺 京东金融Vue组件化实战 vue实战教学视频 无快进 完整版 亲测可用 Vue+webpack 立即下载

相关推荐

京东金融Vue

一套实战视频vue一套实战视频vue一套实战视频vue一套实战视频vue

vue实现简单移动端电商项目

在这里简单介绍下自己做的简单版电商项目 技术选型 vue2.x,vue-router,axios,vuex, 脚手架:vue-cli 3.0 UI选型:cube-ui 项目简介 该项目是简易的前端移动端电商项目,涵盖了首页,商品列表页,搜索页面,购物车页面,个人中心页面 。 当前项目采用mock数据实现简单效果显示 项目搭建 使用的vue-cli3.0进行搭建项目,所需框架可按照上述的需求进行安装依赖 附上项目的package.json { "name": "jdshop", "version":

weixin_36106791的博客 1934

vue项目实战.zip

vue视频教程,2019vue实战视频-不止三套 2019vue实战视频-不止三套 vue实战视频

17种Vue适用于移动端的ui框架

17种Vue适用于移动端的ui框架

qq_45939676的博客 1万+

简单易懂的vue+element+scss金融项目,

一个简单vue框架搭建的pc端项目,使用的是弹性布局,组件化开发,清晰易懂,拿来就用,

(超详细)Qt入门和配置Visual Studio的Qt环境

内容写了Qt入门,创建并编写第一个Qt程序,以及配置VS编写Qt程序的环境。(超级详细)

LY549826LY549264的博客 7678

vue移动端app项目

1.安装vuecli npm i -g @vue/cli 2.创建项目 vue create myProject // 选择 Manually select features Babel, Router, Vuex, CSS Pre-processors, Linter y with node-sass with standard lint lint on save In dedicated config files 3.如果没安装sass,需要装sass npm i node-sass --sass_

轻风细雨_林木木 3153

猫耳语音下载(mediadown)

西宾猫耳语音下载工具,能够帮助你下载猫耳音频节目。如果你是会员,它还能帮你下载会员节目。

new_stranger的专栏 2491

Mand Mobile - 滴滴出品的适用于金融项目的 Vue 移动端 UI 组件库,免费开源、灵活快速、丰富实用

推荐一款可用性很强的移动 UI 组件库,交互细致,有不少直接就可以用的金融行业的组件。

那些免费的砖 1769

广东电信兆能Z82盒子救砖记:手把手教你用U盘强刷HI3798MV100固件(附短接图)

本文详细介绍了广东电信兆能Z82盒子变砖后的救砖方法,重点讲解了使用U盘强刷HI3798MV100固件的全流程,包括诊断、准备工作、短接操作及刷机后的优化设置。特别针对m8233主板和8188无线方案的机型,提供了实用的短接图和操作技巧,帮助用户成功恢复设备。

weixin_30325487的博客 402

基于MATLAB的最大重叠离散小波变换(MODWT)算法详解

最大重叠离散小波变换(Maximal Overlap Discrete Wavelet Transform, MODWT)是DWT的重要改进形式,由Percival和Walden等人在20世纪90年代系统提出并完善。MODWT通过消除下采样操作,采用样本平移不变的分解方式,解决了DWT的多个固有缺陷。MODWT的核心创新在于取消下采样环节。与DWT每级分解后对滤波输出进行二分下采样不同,MODWT在每一级都使用相同的滤波器,但通过插入零值的方式调整滤波器系数,保持每级系数数量与原始信号相同。

qq_42212808的博客 115

前端面试项目冲刺,京东金融Vue组件化实战

第1章 课程介绍包括课程概述、课程安排、学习前提等方面的介绍,让同学们对组件化有一个直观的了解。1-1 课程导学 第2章 环境及知识准备帮助大家梳理课程要用到的开发环境及知识储备2-1 环境及知识准备 第3章 业务开发流程与工程构建安装该章节会快速的讲解各大公司的业务开发流程,包括技术选型、业务开发、测试验证、发布上线等内容,方便大家定位前端开发的角色及注意事项。并帮助大家快速的搭建开发环境,...

weixin_30950887的博客 411

OpenCV-Python实战(10)——详解 OpenCV 轮廓检测

在计算机视觉领域,轮廓通常指图像中对象边界的一系列点。因此,轮廓通常描述了对象边界的关键信息,包含了有关对象形状的主要信息,该信息可用于形状分析与对象检测和识别。在本文中,将首次通过简单示例了解轮廓的基本概念,然后通过实际示例来了解如何检测和压缩轮廓,最后利用介绍如何利用图像矩描述检测到的轮廓属性。

盼小辉丶的博客 3万+

vue项目学习

1,业务开发流程回顾 2,技术选型分析 3,工程构建安装 4,项目设计及原理分析 5,首页开发 9,专题页开发 10,构建工具详解 11,面试进阶 vue.js scss webpack node npm es6 git相关知识 配置好开发环境,掌握项目各项设计的原理 先学习首页的组件化设计,思考和动手实施理财开发 学会项目构建和配置 总结项目技能,沉淀经验,梳理知识 学员收益 1,撞我css模块化技术以及模块化设计 学会前端项目的自动化构建,涉及方方面面 适用对象 1,具备前端基础知识 2,了解mvvm,

拉你手跟我走的专栏 588

【AI编程】Vibe Coding 开发环境搭建与项目实战操作详解

Vibe Coding 开发环境搭建与项目实战操作详解

congge 7335

数字图像处理:直方图匹配或规定化Histogram Matching (Specification)原理及感悟

本文介绍了连续图像和数字图像直方图匹配(直方图规定化)的原理、处理过程,并提供了案例进行了讲解。可以看到,直方图均衡处理是直方图匹配的一个重要桥梁。 最后,对于直方图规定化这个翻译个人觉得很low,个人感觉叫指定直方图更好理解,但Histogram Specification怎么翻译确实不太好把握,因此还是叫Histogram Matching直方图匹配最好。

老猿Python 2880

vue项目的移动端适配方案

可在vue.config.js、.postcssrc.js、postcss.config.js其中之一配置,权重从左到右降低,没有则新建文件,只需要设置其中一个即可。1、在安装好的依赖文件夹node_modules中,找到amfe-flexible/index.js文件,将文件的内容复制出来。2、在src/assets/js文件中,新建amfe-flexible.js文件,粘贴步骤1的内容。③postcss.config.js ,在根目录下新建改文件夹(亲测该方法,可用)2、在main.js中引用。

weixin_40758662的博客 2452

【WRF安装(2025)】服务器移植 WRF 安装环境

【WRF安装(2025)】服务器移植 WRF 安装环境

WW、forever的博客 106

【开源免费】Vue+SpringBoot打造大病保险管理系统,初学者入门实战项目

【ky002】城乡居民大病保险管理系统(Vue+Spring Boot+MySQL),包含系统配置维护、系统参保模块、大病保险管理、看病登记模块、保险审核模块等,同学们可以拿着个项目练练手,对 Vue 和 Spring Boot 框架有更清晰的认识。

Designer 小郑的技术博客 5262

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

Vue组件化京东金融项目实战详细笔记一:环境搭建

文章目录一、环境准备1、nvm(Node版本管理工具) 一、环境准备 1、nvm(Node版本管理工具) windows版本:https://github.com/coreybutler/nvm-windows 安装过程中,你需要选择nvm的安装路径,和你node.js的安装路径,最终你要确定让nvm来管理你的node.js,基本就是傻瓜式安装 cmd窗口输入nvm即可看到信息,表示安装成功 常用命令(参考博客https://www.cnblogs.com/

殷志鹏的博客 881

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

【Java】手把手教会你如何设计自适应面板,实现组件位置自动调整

理解GUI组件自适应原理,通过Java Swing实现自适应面板

qq_46686697的博客 2413

迈瑞BS系列全自动生化分析仪LIS协议接口手册(内含HL7和ASTM)

迈瑞BS系列全自动生化分析仪LIS协议接口手册,内含HL7和ASTM)

京东金融Vue组件化项目实战(完整)

下载地址:百度网盘

weixin_44636903的博客 1954

京东金融Vue组件化项目实战(目前最新)

下载地址:百度网盘

sishenwutia的博客 1118

vue项目屏幕自适应(响应式布局)

自适应布局rem,媒体查询@media还有postcss-px-to-viewport

dream_will_true的博客 1万+

vue前端页面自适应解决方案

vue前端页面自适应解决方案

qq_37704442的博客 1918

CSS:宽高自适应详解

2.选择器before{content''}表示在xx之前添加内容,必须要和content一起搭配使用,可以不写任何内容。1.选择器after{content''}表示在xx之后添加内容,必须要和content一起搭配使用,可以不写任何内容。-【重要】当块级元素脱离文档流的时候,宽度由内容决定=>设置浮动和定位的盒子一定记得要加宽高大小!-浏览器的高度默认是0,html,body{height100%}-HTML,BODY表示浏览器,默认是块级元素,宽度是100%...

ZJH_are的博客 1万+
上一篇: Vue组件化京东金融项目实战详细笔记一:环境搭建
下一篇: HTML & CSS笔记(没有基础内容,比如br标签是换行什么的),CSS2.1,CSS3,响应式布局
ydenergy_殷志鹏
博客等级 码龄7年 5885粉丝 543原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

ydenergy_殷志鹏

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值