06、Vue-Header组件(商家信息)《饿了吗》
一、数据获取
Vue 原本有一个官方推荐的 ajax 插件 vue-resource,但是自从 Vue 更新到 2.0 之后,官方就不再更新 vue-resource。目前主流的 Vue 项目,都选择 axios 来完成 ajax 请求,而大型项目都会使用 Vuex 来管理数据。
- 关于axios插件的引入
在main.js
中引入,但是 axios 并不能Vue.use
,只能每个需要发送请求的组件中即时引入。为了解决这个问题,是在引入 axios 之后,修改原型链。
// main.js// 导入Axios插件import Axios from 'Axios';// 如果在其它的组件中,是无法使用 axios 命令的。但如果将 axios 改写为 Vue 的原型属性Vue.prototype.$ajax = Axios;
// 其他组件,例如App.vueexport default {created() { // this.$ajax ==> Axios this.$ajax.get('/api/seller').then( function(response) {console.log(response);}).catch(function(error) {console.log('获取数据失败:' + error);});},}
安装其他插件的时候,可以直接在 main.js 中引入并 Vue.use()。
// 导入vue-router插件import VueRouter from 'vue-router';// 全局注册,在其他组件就是可以使用Vue.use(VueRouter);
二、header界面
三、公告以及优惠信息 --- 详情弹层页
CSS sticky footers布局: Sticky footers设计是最古老和最常见的效果之一,可以概括如下:如果页面内容不够长的时候,页脚块粘贴在视窗底部;如果内容足够长时,页脚块会被内容向下推送。这种效果不仅是无处不在,很受欢迎,而且实现起来看上去也非常容易。但实际上实现起来要比预期花的时间更多。此外,在CSS2.1中的解决方案中几乎都要给页脚设置一个固定高度。这是很脆弱的,很少是可行的。实际上实现这个效果过于复杂,而且还需要增加特定的标记和一些Hack手段。
<div v-show="detailShow" class="more"><div class="detail-wrapper clearfix"><div class="detail-main"></div></div><div class="detail-close"></div></div>
.more{position: fixed;z-index: 9999;width: 100%;height: 100%;overflow: auto;left: 0;top: 0;transition: all 1s;background: rgba(7, 17, 27, 0.8);}.more .moreShow-wrapper{/* 最小高度和视口一样*/min-height: 100%;}.more .moreShow-wrapper .moreShow-main{padding: 64px 0;}.more .moreShow-close{position: relative;width: 32px;height: 32px;/* 注意*/margin: -64px auto 0;}
四、star组件
export default {// 父组件传递过来的两个参数props: {size:{ // 尺寸大小24, 36, 48type: Number // 指定参数类型},score:{type: Number}},/*计算属性computed的使用描述:在同一个实例化对象中,其中一个属性改变,要求另外一个属性也跟着改变*/computed: { // 传入尺寸不同,类名即不一样starType() { return 'star-' + this.size;},items() {let result = [];// 分数处理,只有整数和0.5let score = Math.floor(this.score * 2) / 2;let has = score % 1 !== 0; // 是否有小数let integer = Math.floor(score); // 整数部分// 点亮的星for(let i=0; i<integer; i++){result.push(CLS_ON);}if(has){ // 半星result.push(CLS_HALF);}while(result.length < LENGTH){result.push(CLS_OFF);}return result;}}}
五、自适应经典flex布局
六、添加动画效果
Vue过渡效果
<transition name="fade"><p v-if="show">hello</p></transition>// v对应的即是name属性- v-enter: 过渡的开始状态(进入时)- v-enter-to: 过渡的结束状态(进入时)- v-enter-active: 定义过渡的过程时间,延迟和曲线函数(进入时)- v-leave: 过渡的开始状态(离开时)- v-leave-to: 过渡的结束状态(离开时)- v-leave-active: 定义过渡的过程时间,延迟和曲线函数(离开时)
<transition name='fade'><div v-show="moreShow" class="more">// ...</div></transition>
http://www.taodudu.cc/news/show-5402895.html
相关文章:
- 仿饿了吗点餐(简单)
- vue2.x饿了吗实战总结
- Vue2.0饿了吗的实践-header组件的实践
- 仿饿了吗点餐系统
- vue.js高仿饿了吗实现tips
- Android 仿饿了吗
- Vue高仿饿了吗学习笔记
- android actionbar和menu的区别,menu和actionbar
- android 4个button 田字布局,ActionBar简介
- android 之 ActionBar
- 生鲜企业为什么要使用蔬菜配送系统?
- 基于Java毕业设计在线药物配送系统源码+系统+mysql+lw文档+部署软件
- 小程序素材抓取软件_生鲜微信小程序软件
- java-php-python-ssm-SpringMVC的时鲜蔬菜配送系统-计算机毕业设计
- 基于JAVAMVC的时鲜蔬菜配送系统计算机毕业设计源码+系统+lw文档+部署
- java毕业设计MVC的时鲜蔬菜配送系统Mybatis+系统+数据库+调试部署
- 计算机毕业设计Java-ssmMVC的时鲜蔬菜配送系统源码+系统+数据库+lw文档
- 建议数据库管理系统通过设定终端接入方式、网络地址范围等条件限制终端登录,
- Linux系统中管理用户登录及登录信息的处理
- 智慧驾培创新模式,vr模拟驾驶带你沉浸式练车
- jsp驾校理论考试模拟系统ssh
- 全自动驾驶汽车的技术与未来
- 基于android驾校模拟考试系统app
- 基于javaEE技术的驾驶证(驾校、交规)模拟考试系统的设计
- php 驾校选择题,驾校驾驶理论考试模拟系统的设计与实现(PHP,MySQL)
- 基于php011驾照驾驶理论考试模拟系统
- 小明Q1投影仪好不好?适合新手小白使用吗?
- 这篇文章告诉你几款必备软件
- 接口模板
- 小学生期末评语
06、Vue-Header组件(商家信息)《饿了吗》相关推荐
- Vue 学习06——Vue父子组件通信、非父子组件通信1
目录 ㋀㋊ ✎ 父子组件间通信(Communication) ◆ 组件间通信 父组件向子组件传递数据 ➬ ① 前言 ② demo ➬ 还有一种形式叫做插槽 ◆ 子组件向父组件传递数据 ① 前言 ② ...
- vue中headers是什么_【vue】饿了么项目-header组件开发
1.数据传递的理解 在App.vue中用到了header组件,首先注册组件 components: {'v-header': header } 然后才能引用 :seller="seller& ...
- vue高仿饿了么项目学习笔记之二:头部header组件的实现
1. Vue-resource应用 在父组件APP.vue的钩子函数created使用vue-resource来ajax请求/api/seller,将数据赋值给vue实例的seller对象,并传值给子 ...
- vue高仿饿了么学习笔记(五)—— header 组件
先贴一张 header 的 UI 图 一.header 组件 1)传入 seller 数据 // App.vue <template><div id="app"& ...
- Vue2.0饿了吗的实践-header组件的实践
header组件的实现图: header组件的代码: html: <template> <div class="header"> <div class ...
- Scrapy爬取饿了么周围商家信息
大学生吃土指南 一.实验目的及原理 作为一个被花呗和各种电商节支配的当代大学生,每个月难免有三十几天会陷入吃土的困境.但就算吃土也要吃的优雅,吃的舒心.饿了么上有时会有商家活动,可以以很实惠(baip ...
- 如何批量采集饿了么外卖商家信息
有时候大家可能由于业务上的发展,业务的对象是外卖商家.餐厅,所以就需要和外卖商家联系洽谈.如果采用传统的线下的方式,也就是挨个去找各个餐厅跟他们谈合作,这种方式交流最为直接,而且面对面的交谈有时候更为 ...
- uni-app仿饿了么点餐界面 左右菜单联动 滚动时商家信息、广告吸顶、弹窗下滑动关闭
1.代码如下: <template><view class="page"><!-- 顶部导航栏 --><view class=" ...
- Vue UI组件 开发框架 服务端 辅助工具 应用实例 Demo示例
2019独角兽企业重金招聘Python工程师标准>>> element ★11612 - 饿了么出品的Vue2的web UI工具套件 Vux ★7503 - 基于Vue和WeUI的组 ...
最新文章
- RuntimeWarning: invalid value encountered in true_divide
- Java泛型编程基础
- 单片机c语言调用函数费时,下头函数,只要被调用就会导致单片机死机,请大家帮忙分析...
- [SCOI2010]生成字符串
- C# 单元测试简单入门
- Python3空字符串和len()函数
- 苹果手机视频传输教程-通过无线将电脑上视频传到手机
- pandas速查手册(中文版)
- MySQL根被拒绝_[转载]phpMyAdmin 尝试连接到 MySQL 服务器,但服务器拒绝连接。...
- Hybris里类似ABAP Netweaver的DDIC - 如何做data type的extension
- 连接mysql次数_MySQL通过CONNECTION_CONTROL限制连接次数
- 天津市电子计算机职业中专 概况,天津市电子计算机职业中专 .pptx
- homebrew mysql conf_homebrew 安装mysql后,如何配置mysql
- 【中国版Office 365 应用程序注册】
- 数据访问基础类(基于Access数据库)
- git使用报错: fatal: Couldn‘t find remote ref master的解决方法
- poj 1062 昂贵的聘礼 最短路
- 怎么在服务器上运行sql文件,数据库执行sql文件
- 局域网自定义域名H5站点移动设备测试时的代理设置
- Xcelsius 的苦难日子