Vue.js现在好火,尤其是做单页应用超赞!比如你们知道美团吗?就是那个在国内很牛的外卖网站。他们的界面很棒,设计得人性化。当然了,我也会教你怎么用Vue.js做出像美团那样的点餐界面~我们要学的就是怎样通过Vue搭建起项目,搞定布局,加入各种元素,让你的点餐网既高大上又实在有用!
1.搭建Vue项目
想做个像美团那样的点餐页?别急,安装Vue CLI编译器就行!虽然有那么点儿复杂,但按着这儿的提示一步步来还是挺容易的。
bash npm install -g@vue/cli vue create meal-orderingnpm install -g @vue/cli创建好项目后,进入项目目录并启动开发服务器:
vue create vue-meituancd meal-ordering
npm run serve
cd vue-meituan npm run serve搞定了vue,直接在浏览器输个localhost:8080,就能看到欢迎页,简单到惊人!现在,就可以设计你想要的页面,尽情发挥各种组件~
2.设计页面布局
首先,得先把想做的网页画出来大概的样子,这应该不算难,用像PS或者Sketch这样的软件就行。然后,为了省事儿,我们就直接借用现成的网页架构,比如说那上面的导航栏、下面的菜单栏还有中间的商品列表这些东西都可以拿来用。
主要结构如下:
-顶部导航栏:包含logo、搜索框和导航菜单。
-瞅图找货:看看这些图,看清商品和价钱。想要就把它加入购物车!
-底部菜单栏:包括购物车、结算和提交等功能按钮。
把版面和每个小部分搞定后,页面立刻清爽多了,用着也方便顺手得多。
/* 样式 */3.实现导航栏组件
哈喽,说的是导航栏!它上面有个图标,搜搜框,再加目录菜单那几样。要创建Vue代码的话,可以把菜单之类的数据跟状况存到data属性里,然后用v-for指令让菜单看起来更生动好玩~
只要轻轻点击,就能让那个onMenuClick发生作用。这样做的话,菜单就会乖乖听你指挥,与导航栏配合得完美无瑕,而且还可以随时随地进行更新!
4.实现商品列表组件
export default { data() { return { menuItems: [ {name: '点餐', active: true}, {name: '评价', active: false}, {name: '商家', active: false}, {name: '我的', active: false}, ], } }, methods: { onMenuClick(index) { this.menuItems.forEach((item, i) => { item.active = i === index; }); } } }; /* 样式 */就像是超市摆的那些货架,我们在里面存放了许多图片和价格这类信息,还有购物车功能!把这些全部存在数据库里,再用v-for函数把商品显示出来就成了。
别急用onCartClick控制点击,能搞定的。把东西加入购物车后,随便是哪个部位轻轻一碰,就能让商品数量自动加一!还有这个v-show神技能帮忙调节数量的显示和隐藏,简直太方便!
5.实现底部菜单栏组件
底子的菜单栏就是个大仓库,有东西要买就搁那儿,支付宝、微信都行。你可别轻视它,关键时候那是真给力!Vue的组件让这个菜单更实用,再加上computed属性,随时告诉你消费情况和总价,买完了心里也踏实!
给界面设计加把劲,让结账按钮和提交按钮在需要的时候浮现出来!这就靠咱们的v-show,实现起来省时省力还好用~
6.页面优化与调试
export default { data() { return { products: [ { image: 'product-1.png', name: '烤鸭', desc: '烤鸭又称烤北京鸭,是中国传统名菜之一。', price: 58, count: 0, }, // ... ] } }, methods: { onCartClick(product) { product.count++; } } }; /* 样式 */{{ product.name }}
{{ product.desc }}
{{ product.price }} 元0}" @click="onCartClick(product)">0"> {{ product.count }}搞定之前的步骤以后,别忘记检查一下页面!看看布局漂不漂亮,样式整齐与否,有没有功能冲突什么的。最重要的是用好工具,做一次适用于手机和平板这些小屏幕设备的兼容性测试。这样不管你用什么分辨率或型号的设备,都会看得舒服,使用起来也顺畅~
想让网页快点吗?试试只加载需要的图片尽量减少HTTP请求,网页肯定会迅速滑动起来!据说压缩和混淆代码也有奇效,让网页跑得飞快。
7.总结与展望
看文章自学,我用Vue.js搞出了跟美团一样的点餐页面。学到了不少东西,比如怎么搭建Vue项目,如何做版式设计,以及怎么控制各个部分的功能啊什么的。最后就到优化和调试阶段!
未来前端技术会变得超级厉害,能做出好多有意思的东西,就像让你们点菜都变得更简单。不过还要记得听取用户反馈,持续优化产品,才能够应对市场的各种变化,让人人都满意!
希望这玩意儿能帮到你们!别忘了问问题或者想出新点子咱们一起唠嗑!
export default { computed: { totalCount() { let count = 0; this.products.forEach(product => { count += product.count; }); return count; }, totalPrice() { let price = 0; this.products.forEach(product => { price += product.count * product.price; }); return price; }, } }; /* 样式 */。
评论0