当前位置: 首页 > news >正文

阜宁网站建设服务商百度一下你就知道手机版

阜宁网站建设服务商,百度一下你就知道手机版,最近一周体育新闻大事,ps软件下载官网文章目录 项目学习总结项目中的vw适配vw使用 封装axios实例axios常见请求配置axios响应结构axios拦截器配置Vue Router全局前置守卫 项目学习总结 在智慧商城项目中的学习总结。 项目中的vw适配 vw 是一种长度单位,代表视口宽度的百分比。1vw 等于视口宽度的1%。…

文章目录

  • 项目学习总结
    • 项目中的vw适配
      • vw使用
    • 封装axios实例
    • axios常见请求配置
    • axios响应结构
    • axios拦截器配置
    • Vue Router全局前置守卫


项目学习总结

在智慧商城项目中的学习总结。

项目中的vw适配

vw 是一种长度单位,代表视口宽度的百分比。1vw 等于视口宽度的1%。在网页设计和前端开发中,vw 单位常用于实现响应式设计和屏幕适配,尤其是针对不同尺寸和分辨率的移动设备。

使用vw适配的好处:

  • 响应式:使用vw可以确保元素的尺寸随浏览器窗口或设备屏幕的大小变化而按比例调整,实现良好的响应式布局。
  • 简化计算:相比于传统的像素单位,vw让开发者能够更直观地根据视口比例来设定元素尺寸,无需考虑具体像素值。
  • 设计师与开发者对齐:设计图上的百分比尺寸可以直接转换为vw单位,有助于设计与实现的一致性。

vw使用

  • 安装:npm i postcss-px-to-viewport@1.1.1 -D``
  • 根据根目录, 新建postcss的配置文件postcss.config.js
    module.exports = {plugins: {'postcss-px-to-viewport': {viewportWidth: 375,},},
    };
    
    viewportWidth:设计稿的视口宽度

封装axios实例

当我们在一个项目中需要在axios中做一些自定义配置时,最好新建一个实例,再在实例上进行配置,可以避免对axios进行污染。除此之外,如果需要访问多个服务地址,而这些服务请求和响应的结构也可能都完全不同,那么你可以通过axios.create创建不同的实例来处理。

语法:

const instance = axios.create({baseURL: 'https://some-domain.com/api/',timeout: 1000,headers: {'X-Custom-Header': 'foobar'}
});

axios常见请求配置

一些创建请求时可以用的配置选项。只有url是必需的,如果没有指定method,请求默认使用GET方法。

{// `url` 是用于请求的服务器 URLurl: '/user',// `method` 是创建请求时使用的方法method: 'get', // 默认值// `baseURL` 将自动加在 `url` 前面,除非 `url` 是一个绝对 URL。// 它可以通过设置一个 `baseURL` 便于为 axios 实例的方法传递相对 URLbaseURL: 'https://some-domain.com/api/',// `transformRequest` 允许在向服务器发送前,修改请求数据// 它只能用于 'PUT', 'POST' 和 'PATCH' 这几个请求方法// 数组中最后一个函数必须返回一个字符串, 一个Buffer实例,ArrayBuffer,FormData,或 Stream// 你可以修改请求头。transformRequest: [function (data, headers) {// 对发送的 data 进行任意转换处理return data;}],// `transformResponse` 在传递给 then/catch 前,允许修改响应数据transformResponse: [function (data) {// 对接收的 data 进行任意转换处理return data;}],// 自定义请求头headers: {'X-Requested-With': 'XMLHttpRequest'},// `params` 是与请求一起发送的 URL 参数// 必须是一个简单对象或 URLSearchParams 对象params: {ID: 12345},// `data` 是作为请求体被发送的数据// 仅适用 'PUT', 'POST', 'DELETE 和 'PATCH' 请求方法// 在没有设置 `transformRequest` 时,则必须是以下类型之一:// - string, plain object, ArrayBuffer, ArrayBufferView, URLSearchParams// - 浏览器专属: FormData, File, Blob// - Node 专属: Stream, Bufferdata: {firstName: 'Fred'},// 发送请求体数据的可选语法// 请求方式 post// 只有 value 会被发送,key 则不会data: 'Country=Brasil&City=Belo Horizonte',// `timeout` 指定请求超时的时间,单位未毫秒。// 如果请求时间超过 `timeout` 的值,则请求会被中断timeout: 1000, // 默认值是 `0` (永不超时)// `responseType` 表示浏览器将要响应的数据类型// 选项包括: 'arraybuffer', 'document', 'json', 'text', 'stream'// 浏览器专属:'blob'responseType: 'json', // 默认值// `maxContentLength` 定义了node.js中允许的HTTP响应内容的最大字节数maxContentLength: 2000,// `maxBodyLength`(仅Node)定义允许的http请求内容的最大字节数maxBodyLength: 2000,
}

axios响应结构

一个请求的响应包含如下信息

{// `data` 由服务器提供的响应data: {},// `status` 来自服务器响应的 HTTP 状态码status: 200, // 2xx表示请求正常// `statusText` 来自服务器响应的 HTTP 状态信息statusText: 'OK',// `headers` 是服务器响应头// 所有的 header 名称都是小写,而且可以使用方括号语法访问// 例如: `response.headers['content-type']`headers: {},// `config` 是 `axios` 请求的配置信息config: {},// `request` 是生成此响应的请求// 在node.js中它是最后一个ClientRequest实例 (in redirects),// 在浏览器中则是 XMLHttpRequest 实例request: {}
}

axios拦截器配置

axios拦截器可以在请求或响应被 then 或 catch 处理前拦截它们。

添加请求拦截器和响应拦截器:

// 添加请求拦截器
axios.interceptors.request.use(function (config) {// 在发送请求之前做些什么return config;}, function (error) {// 对请求错误做些什么return Promise.reject(error);});// 添加响应拦截器
axios.interceptors.response.use(function (response) {// 2xx 范围内的状态码都会触发该函数。// 对响应数据做点什么return response;}, function (error) {// 超出 2xx 范围的状态码都会触发该函数。// 对响应错误做点什么return Promise.reject(error);});

如果稍后需要移除拦截器:

const myInterceptor = axios.interceptors.request.use(function () {/*...*/});
axios.interceptors.request.eject(myInterceptor);

给自定义的axios实例添加拦截器:

const instance = axios.create();
instance.interceptors.request.use(function () {/*...*/});

Vue Router全局前置守卫

当一个导航触发时,全局前置守卫按照创建顺序调用。守卫是异步解析执行,此时导航在所有守卫解决完之前一直处于等待中。

应用场景:未登录情况下不可访问购物车,并跳转至登录页面。

语法:

const router = createRouter({ ... })router.beforeEach((to, from) => {// ...// 返回 false 以取消导航return false
})

每个守卫方法接收两个参数:

  • to:即将要进入的目标
  • from:当前导航正要离开的路由
  • next:是否放行当前导航
    • next(路径):拦截到某个路径页面
    • 在任意给定的导航守卫中都没严格调用一次
http://www.ds6.com.cn/news/43066.html

相关文章:

  • 怎样360网站做推广东莞免费建站公司
  • 宁波seo是什么意思整站优化和关键词优化的区别
  • 设计师网上接单软件广州百度seo代理
  • 怎么做自己的公司网站放在百度kol推广
  • 网站seo外包价格app拉新推广接单平台
  • 开家做网站公司有哪些友情链接的检查方法
  • 网站设电商详情页模板免费下载
  • 做影视网站违法网店营销策划方案ppt
  • 运营电商是做什么的南宁百度推广排名优化
  • 邯郸网站优化平台北京千锋教育培训机构怎么样
  • 韶关哪里做网站关键词统计工具有哪些
  • 电子科技 深圳 网站建设推广平台排名前十名
  • 今日全国猪价seo算法是什么
  • 网站忧化 推广同时做英国搜索引擎
  • 什么网站可以接效果图做外链代发免费
  • 张家界专业seo优化seo关键词词库
  • 什么是网站建设策划书企业网站建设价格
  • .net电商网站全站开发百度排名
  • 淄博个人网站建设关键词怎么做快速的有排名
  • 滁州市网站建设科技公司今日头条极速版最新
  • wordpress网址重定向上海野猪seo
  • 网站制作过程中碰到的问题抖音搜索排名优化
  • 客户在我这做的网站被罚关键词工具网站
  • 先申请域名后做网站免费网站服务器
  • 无锡网站 制作seo是什么意思新手怎么做seo
  • 云服务器可以用来做网站么seo推广怎么做视频教程
  • 最近2019中文字幕免费看邵阳seo排名
  • 小程序建站平台哪个好深圳推广网络
  • 网站开发工具软件今日军事新闻报道
  • 广州网站建设吧网络推广技巧