效果展示
由于element-ui官方还未提供对vue3.0项目的完整支持,因此该登录页设计基于vue2.0版本
我使用的是VSCode,小伙伴们也可以选择到WebStorm或者HBuilderX
该项目通过 vue-cli 脚手架搭建
| 依赖 | 版本 |
|---|---|
| vue | 2.6.14 |
| axios | 0.27.2 |
| element-ui | 2.15.9 |
| vue-router | 3.5.1 |
拿到源码后,进入到项目目录下:
RollApi:点我去调用~

可以看到有许多的API接口可供调用,而且都是免费的
那么该如何去调用呢?
比如想要调用到天气查询的接口

接口调用问题
由于该登录页加载完成时同时调用到了三个接口:分别是验证码接口、IP接口、天气查询接口
原本代码如下:
created(){
this.getCode();
this.getIp();
this.getWeather();
}
这样写会产生什么问题呢?
由于created()钩子函数为异步加载,第一个会产生的原因就是验证码、ip、天气不能被顺序调用到,而天气数据依赖于查询出的ip数据,所以会产生接口调用失败问题,返回错误信息;第二个会产生的原因就是,由于我在没有升级白银会员之前,接口的QPS为1,因此同时发起三次接口请求,只能有一次成功,其它两个接口均调用失败,因此我升级到了白银会员
为了解决这个问题,需对created()函数修改:
// 采用定时器,每隔0.05秒顺序执行三个接口调用函数
this.getCode().then(res=>{
let timer = setTimeout(() => {
// 获取到验证码0.05秒后,再去获取ip信息
this.getIp().then(res=>{
let timer = setTimeout(() => {
// 获取到ip信息0.05秒后,再去获取天气信息
this.getWeather();
}, 50)
});
}, 50)
})
修改后,采用定时器策略牺牲了created()函数的异步方式,强行将三个接口调用函数顺序执行,这样就完美解决了接口调用存在的问题
接口调用传参问题
可以看到接口请求实例中使用到?传参,那么在vue中使用到axios请求该如何传参呢?如下:
// 从免费接口获取验证码
async getCode(){
// https://www.mxnzp.com/api/verifycode/code
// ?len=4&type=0&app_id=换成你申请到的&app_secret=换成你申请到的
const {data:res} = await this.$ajax.get('api/verifycode/code',
{
params:{
len:4,
type:0,
app_id:'换成你申请到的',
app_secret:'换成你申请到的'
}
}
)
console.log(res)
if(res.code !== 1) return this.$message.error('验证码获取失败!请刷新页面!')
this.code.pic = res.data.verifyCodeImgUrl
this.code.realCode = res.data.verifyCode
},
数据源内对象的互相访问
由于左侧卡片2 dialogMsg对象展示的天气信息来源于天气信息对象weathers,不能够在数据源中直接访问到其它对象的值,这时候可以使用到计算属性
// 使用计算属性去赋值天气数据
computed:{
computeDialogMsg(){
return this.dialogMsg = [
{ id:1,msg:"您所在城市:"+ this.weathers.ads } ,
{ id:2,msg:"当前温度:" + this.weathers.temp } ,
{ id:3,msg:"当前天气:" + this.weathers.weather } ,
{ id:4,msg:"当前风向:" + this.weathers.windDirection } ,
{ id:5,msg:"当前风力:" + this.weathers.windPower } ,
{ id:6,msg:'祝您度过美好的一天~' } ,
]
}
},
给input输入框添加回车事件
当给普通的input标签添加回车事件,只需@keyup.enter="xxx"即可,但当使用到element-ui提供的el-input时,需使用到@keyup.enter.native="xxx"才可生效
最后,需要的小伙伴可以去到我的github拉取源码~
github地址:KongFuning
喜欢的话请点点小星星~
我正在使用i18n从头开始构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在rubyonrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi
我有一个模型:classItem项目有一个属性“商店”基于存储的值,我希望Item对象对特定方法具有不同的行为。Rails中是否有针对此的通用设计模式?如果方法中没有大的if-else语句,这是如何干净利落地完成的? 最佳答案 通常通过Single-TableInheritance. 关于ruby-on-rails-Rails-子类化模型的设计模式是什么?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.co
我将应用程序升级到Rails4,一切正常。我可以登录并转到我的编辑页面。也更新了观点。使用标准View时,用户会更新。但是当我添加例如字段:name时,它不会在表单中更新。使用devise3.1.1和gem'protected_attributes'我需要在设备或数据库上运行某种更新命令吗?我也搜索过这个地方,找到了许多不同的解决方案,但没有一个会更新我的用户字段。我没有添加任何自定义字段。 最佳答案 如果您想允许额外的参数,您可以在ApplicationController中使用beforefilter,因为Rails4将参数
按照目前的情况,这个问题不适合我们的问答形式。我们希望答案得到事实、引用或专业知识的支持,但这个问题可能会引发辩论、争论、投票或扩展讨论。如果您觉得这个问题可以改进并可能重新打开,visitthehelpcenter指导。关闭10年前。问题1)我想知道rubyonrails是否有功能类似于primefaces的gem。我问的原因是如果您使用primefaces(http://www.primefaces.org/showcase-labs/ui/home.jsf),开发人员无需担心javascript或jquery的东西。据我所知,JSF是一个规范,基于规范的各种可用实现,prim
导读:随着叮咚买菜业务的发展,不同的业务场景对数据分析提出了不同的需求,他们希望引入一款实时OLAP数据库,构建一个灵活的多维实时查询和分析的平台,统一数据的接入和查询方案,解决各业务线对数据高效实时查询和精细化运营的需求。经过调研选型,最终引入ApacheDoris作为最终的OLAP分析引擎,Doris作为核心的OLAP引擎支持复杂地分析操作、提供多维的数据视图,在叮咚买菜数十个业务场景中广泛应用。作者|叮咚买菜资深数据工程师韩青叮咚买菜创立于2017年5月,是一家专注美好食物的创业公司。叮咚买菜专注吃的事业,为满足更多人“想吃什么”而努力,通过美好食材的供应、美好滋味的开发以及美食品牌的孵
?博客主页:https://xiaoy.blog.csdn.net?本文由呆呆敲代码的小Y原创,首发于CSDN??学习专栏推荐:Unity系统学习专栏?游戏制作专栏推荐:游戏制作?Unity实战100例专栏推荐:Unity实战100例教程?欢迎点赞?收藏⭐留言?如有错误敬请指正!?未来很长,值得我们全力奔赴更美好的生活✨------------------❤️分割线❤️-------------------------
C#实现简易绘图工具一.引言实验目的:通过制作窗体应用程序(C#画图软件),熟悉基本的窗体设计过程以及控件设计,事件处理等,熟悉使用C#的winform窗体进行绘图的基本步骤,对于面向对象编程有更加深刻的体会.Tutorial任务设计一个具有基本功能的画图软件**·包括简单的新建文件,保存,重新绘图等功能**·实现一些基本图形的绘制,包括铅笔和基本形状等,学习橡皮工具的创建**·设计一个合理舒适的UI界面**注明:你可能需要先了解一些关于winform窗体应用程序绘图的基本知识,以及关于GDI+类和结构的知识二.实验环境Windows系统下的visualstudio2017C#窗体应用程序三.
目录前言滤波电路科普主要分类实际情况单位的概念常用评价参数函数型滤波器简单分析滤波电路构成低通滤波器RC低通滤波器RL低通滤波器高通滤波器RC高通滤波器RL高通滤波器部分摘自《LC滤波器设计与制作》,侵权删。前言最近需要学习放大电路和滤波电路,但是由于只在之前做音乐频谱分析仪的时候简单了解过一点点运放,所以也是相当从零开始学习了。滤波电路科普主要分类滤波器:主要是从不同频率的成分中提取出特定频率的信号。有源滤波器:由RC元件与运算放大器组成的滤波器。可滤除某一次或多次谐波,最普通易于采用的无源滤波器结构是将电感与电容串联,可对主要次谐波(3、5、7)构成低阻抗旁路。无源滤波器:无源滤波器,又称
项目介绍随着我国经济迅速发展,人们对手机的需求越来越大,各种手机软件也都在被广泛应用,但是对于手机进行数据信息管理,对于手机的各种软件也是备受用户的喜爱小学生兴趣延时班预约小程序的设计与开发被用户普遍使用,为方便用户能够可以随时进行小学生兴趣延时班预约小程序的设计与开发的数据信息管理,特开发了小程序的设计与开发的管理系统。小学生兴趣延时班预约小程序的设计与开发的开发利用现有的成熟技术参考,以源代码为模板,分析功能调整与小学生兴趣延时班预约小程序的设计与开发的实际需求相结合,讨论了小学生兴趣延时班预约小程序的设计与开发的使用。开发环境开发说明:前端使用微信微信小程序开发工具:后端使用ssm:VU
需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc