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

揭阳网站制作平台wordpress主题替换谷歌

揭阳网站制作平台,wordpress主题替换谷歌,门户网站制作费用,营销策划与运营方案01. 订单结算台 所谓的 “立即结算”#xff0c;本质就是跳转到订单结算台#xff0c;并且跳转的同时#xff0c;需要携带上对应的订单参数。 而具体需要哪些参数#xff0c;就需要基于 【订单结算台】 的需求来定。 (1) 静态布局 准备静态页面 templatedi…01. 订单结算台 所谓的 “立即结算”本质就是跳转到订单结算台并且跳转的同时需要携带上对应的订单参数。 而具体需要哪些参数就需要基于 【订单结算台】 的需求来定。 (1) 静态布局 准备静态页面 templatediv classpayvan-nav-bar fixed title订单结算台 left-arrow click-left$router.go(-1) /!-- 地址相关 --div classaddressdiv classleft-iconvan-icon namelogistics //divdiv classinfo v-iftruediv classinfo-contentspan classname小红/spanspan classmobile13811112222/span/divdiv classinfo-address江苏省 无锡市 南长街 110号 504/div/divdiv classinfo v-else请选择配送地址/divdiv classright-iconvan-icon namearrow //div/div!-- 订单明细 --div classpay-listdiv classlistdiv classgoods-itemdiv classleftimg srchttp://cba.itlike.com/public/uploads/10001/20230321/8f505c6c437fc3d4b4310b57b1567544.jpg alt //divdiv classrightp classtit text-ellipsis-2三星手机 SAMSUNG Galaxy S23 8GB256GB 超视觉夜拍系统 超清夜景 悠雾紫 5G手机 游戏拍照旗舰机s23/pp classinfospan classcountx3/spanspan classprice¥9.99/span/p/div/div/divdiv classflow-num-boxspan共 12 件商品合计/spanspan classmoney1219.00/span/divdiv classpay-detaildiv classpay-cellspan订单总金额/spanspan classred1219.00/span/divdiv classpay-cellspan优惠券/spanspan无优惠券可用/span/divdiv classpay-cellspan配送费用/spanspan v-iffalse请先选择配送地址/spanspan v-else classred0.00/span/div/div!-- 支付方式 --div classpay-wayspan classtit支付方式/spandiv classpay-cellspanvan-icon namebalance-o /余额支付可用 ¥ 999919.00 元/span!-- span请先选择配送地址/span --span classredvan-icon namepassed //span/div/div!-- 买家留言 --div classbuytipstextarea placeholder选填买家留言50字内 name id cols30 rows10/textarea/div/div!-- 底部提交 --div classfooter-fixeddiv classleft实付款span999919/span/divdiv classtipsbtn提交订单/div/div/div /templatescript export default {name: PayIndex,data () {return {}},methods: {} } /scriptstyle langless scoped .pay {padding-top: 46px;padding-bottom: 46px;::v-deep {.van-nav-bar__arrow {color: #333;}} } .address {display: flex;align-items: center;justify-content: flex-start;padding: 20px;font-size: 14px;color: #666;position: relative;background: url(/assets/border-line.png) bottom repeat-x;background-size: 60px auto;.left-icon {margin-right: 20px;}.right-icon {position: absolute;right: 20px;top: 50%;transform: translateY(-7px);} } .goods-item {height: 100px;margin-bottom: 6px;padding: 10px;background-color: #fff;display: flex;.left {width: 100px;img {display: block;width: 80px;margin: 10px auto;}}.right {flex: 1;font-size: 14px;line-height: 1.3;padding: 10px;padding-right: 0px;display: flex;flex-direction: column;justify-content: space-evenly;color: #333;.info {margin-top: 5px;display: flex;justify-content: space-between;.price {color: #fa2209;}}} }.flow-num-box {display: flex;justify-content: flex-end;padding: 10px 10px;font-size: 14px;border-bottom: 1px solid #efefef;.money {color: #fa2209;} }.pay-cell {font-size: 14px;padding: 10px 12px;color: #333;display: flex;justify-content: space-between;.red {color: #fa2209;} } .pay-detail {border-bottom: 1px solid #efefef; }.pay-way {font-size: 14px;padding: 10px 12px;border-bottom: 1px solid #efefef;color: #333;.tit {line-height: 30px;}.pay-cell {padding: 10px 0;}.van-icon {font-size: 20px;margin-right: 5px;} }.buytips {display: block;textarea {display: block;width: 100%;border: none;font-size: 14px;padding: 12px;height: 100px;} }.footer-fixed {position: fixed;background-color: #fff;left: 0;bottom: 0;width: 100%;height: 46px;line-height: 46px;border-top: 1px solid #efefef;font-size: 14px;display: flex;.left {flex: 1;padding-left: 12px;color: #666;span {color:#fa2209;}}.tipsbtn {width: 121px;background: linear-gradient(90deg,#f9211c,#ff6335);color: #fff;text-align: center;line-height: 46px;display: block;font-size: 14px;} } /style(2) 获取收货地址列表 1 封装获取地址的接口 import request from /utils/request// 获取地址列表 export const getAddressList () {return request.get(/address/list) }2 页面中 - 调用获取地址 data () {return {addressList: []} }, computed: {selectAddress () {// 这里地址管理不是主线业务直接获取默认第一条地址return this.addressList[0] } }, async created () {this.getAddressList() }, methods: {async getAddressList () {const { data: { list } } await getAddressList()this.addressList list} }3 页面中 - 进行渲染 computed: {longAddress () {const region this.selectAddress.regionreturn region.province region.city region.region this.selectAddress.detail} },div classinfo v-ifselectAddress?.address_iddiv classinfo-contentspan classname{{ selectAddress.name }}/spanspan classmobile{{ selectAddress.phone }}/span/divdiv classinfo-address{{ longAddress }}/div /div(3) 订单结算 - 封装通用接口 思路分析 这里的订单结算有两种情况 购物车结算需要两个参数 ① mode“cart” ② cartIds“cartId, cartId” 立即购买结算需要三个参数 ① mode“buyNow” ② goodsId“商品id” ③ goodsSkuId“商品skuId”【商品规格如大小、颜色】 都需要跳转时将参数传递过来 封装通用 API 接口 api/order import request from /utils/requestexport const checkOrder (mode, obj) {return request.get(/checkout/order, {params: {mode,delivery: 0,couponId: 0,isUsePoints: 0,...obj}}) }(4) 订单结算 - 购物车结算 1 跳转时传递查询参数 layout/cart.vue div clickgoPay结算({{ selCount }})/divgoPay () {if (this.selCount 0) {this.$router.push({path: /pay,query: {mode: cart,cartIds: this.selCartList.map(item item.id).join(,)}})} }2 页面中接收参数, 调用接口获取数据 data () {return {order: {},personal: {}} },computed: {mode () {return this.$route.query.mode},cartIds () {return this.$route.query.cartIds} }async created () {this.getOrderList() },async getOrderList () {if (this.mode cart) {const { data: { order, personal } } await checkOrder(this.mode, { cartIds: this.cartIds })this.order orderthis.personal personal} }3 基于数据进行渲染 !-- 订单明细 -- div classpay-list v-iforder.goodsListdiv classlistdiv classgoods-item v-foritem in order.goodsList :keyitem.goods_iddiv classleftimg :srcitem.goods_image alt //divdiv classrightp classtit text-ellipsis-2{{ item.goods_name }}/pp classinfospan classcountx{{ item.total_num }}/spanspan classprice¥{{ item.total_pay_price }}/span/p/div/div/divdiv classflow-num-boxspan共 {{ order.orderTotalNum }} 件商品合计/spanspan classmoney{{ order.orderTotalPrice }}/span/divdiv classpay-detaildiv classpay-cellspan订单总金额/spanspan classred{{ order.orderTotalPrice }}/span/divdiv classpay-cellspan优惠券/spanspan无优惠券可用/span/divdiv classpay-cellspan配送费用/spanspan v-if!selectAddress请先选择配送地址/spanspan v-else classred0.00/span/div/div!-- 支付方式 --div classpay-wayspan classtit支付方式/spandiv classpay-cellspanvan-icon namebalance-o /余额支付可用 ¥ {{ personal.balance }} 元/span!-- span请先选择配送地址/span --span classredvan-icon namepassed //span/div/div!-- 买家留言 --div classbuytipstextarea placeholder选填买家留言50字内 name id cols30 rows10/textarea/div /div!-- 底部提交 -- div classfooter-fixeddiv classleft实付款span{{ order.orderTotalPrice }}/span/divdiv classtipsbtn提交订单/div /div(5) 订单结算 - 立即购买结算 1 点击跳转传参 prodetail/index.vue div classbtn v-ifmode buyNow clickgoBuyNow立刻购买/divgoBuyNow () {this.$router.push({path: /pay,query: {mode: buyNow,goodsId: this.goodsId,goodsSkuId: this.detail.skuList[0].goods_sku_id,goodsNum: this.addCount}}) }2 计算属性处理参数 computed: {...goodsId () {return this.$route.query.goodsId},goodsSkuId () {return this.$route.query.goodsSkuId},goodsNum () {return this.$route.query.goodsNum} }3 基于请求时携带参数发请求渲染 async getOrderList () {...if (this.mode buyNow) {const { data: { order, personal } } await checkOrder(this.mode, {goodsId: this.goodsId,goodsSkuId: this.goodsSkuId,goodsNum: this.goodsNum})this.order orderthis.personal personal} }(6) mixins 复用 - 处理登录确认框的弹出 1 新建一个 mixin 文件 mixins/loginConfirm.js mixin文件中可以编写Vue组件实例的配置项通过一定语法可以直接混入到组件内部data、methods、computed和生命周期函数 注意点如果此处和组件内提供了同名的data或methods则组件内优先级更高 export default{data(){return {title: 标题}},methods(){sayHi(){}} }当其他组件引入mixin文件时该组件中的data就会包含一个title属性methods中会包含一个sayHi方法。 export default {methods: {// 是否需要弹登录确认框// (1) 需要返回 true并直接弹出登录确认框// (2) 不需要返回 falseloginConfirm () {if (!this.$store.getters.token) {this.$dialog.confirm({title: 温馨提示,message: 此时需要先登录才能继续操作哦,confirmButtonText: 去登陆,cancelButtonText: 再逛逛}).then(() {// 如果希望跳转到登录 登录后能回跳回来需要在跳转去携带参数 (当前的路径地址)// this.$route.fullPath (会包含查询参数)this.$router.replace({path: /login,query: {backUrl: this.$route.fullPath}})}).catch(() {})return true}return false}} }2 页面中导入混入方法 import loginConfirm from /mixins/loginConfirmexport default {name: ProDetail,mixins: [loginConfirm],... }3 页面中调用 混入的方法 async addCart () {if (this.loginConfirm()) {return}const { data } await addCart(this.goodsId, this.addCount, this.detail.skuList[0].goods_sku_id)this.cartTotal data.cartTotalthis.$toast(加入购物车成功)this.showPannel falseconsole.log(this.cartTotal) },goBuyNow () {if (this.loginConfirm()) {return}this.$router.push({path: /pay,query: {mode: buyNow,goodsId: this.goodsId,goodsSkuId: this.detail.skuList[0].goods_sku_id,goodsNum: this.addCount}}) }02. 提交订单并支付 1 封装 API 通用方法统一余额支付 // 提交订单 export const submitOrder (mode, params) {return request.post(/checkout/submit, {mode,delivery: 10, // 物流方式 配送方式 (10快递配送 20门店自提)couponId: 0, // 优惠券 idpayType: 10, // 余额支付isUsePoints: 0, // 是否使用积分...params}) }2 买家留言绑定 data () {return {remark: } }, div classbuytipstextarea v-modelremark placeholder选填买家留言50字内 name id cols30 rows10/textarea /div3 注册点击事件提交订单并支付 div classtipsbtn clicksubmitOrder提交订单/div// 提交订单 async submitOrder () {if (this.mode cart) {await submitOrder(this.mode, {remark: this.remark,cartIds: this.cartIds})}if (this.mode buyNow) {await submitOrder(this.mode, {remark: this.remark,goodsId: this.goodsId,goodsSkuId: this.goodsSkuId,goodsNum: this.goodsNum})}this.$toast.success(支付成功)this.$router.replace(/myorder) }03. 订单管理 (1) 静态布局 1 基础静态结构 templatediv classordervan-nav-bar title我的订单 left-arrow click-left$router.go(-1) /van-tabs v-modelactivevan-tab title全部/van-tabvan-tab title待支付/van-tabvan-tab title待发货/van-tabvan-tab title待收货/van-tabvan-tab title待评价/van-tab/van-tabsOrderListItem/OrderListItem/div /templatescript import OrderListItem from /components/OrderListItem.vue export default {name: OrderPage,components: {OrderListItem},data () {return {active: 0}} } /scriptstyle langless scoped .order {background-color: #fafafa; } .van-tabs {position: sticky;top: 0; } /style2 components/OrderListItem templatediv classorder-list-itemdiv classtitdiv classtime2023-07-01 12:02:13/divdiv classstatusspan待支付/span/div/divdiv classlistdiv classlist-itemdiv classgoods-imgimg srchttp://cba.itlike.com/public/uploads/10001/20230321/c4b5c61e46489bb9b9c0630002fbd69e.jpg alt/divdiv classgoods-content text-ellipsis-2Apple iPhone 14 Pro Max 256G 银色 移动联通电信5G双卡双待手机/divdiv classgoods-tradep¥ 1299.00/ppx 3/p/div/divdiv classlist-itemdiv classgoods-imgimg srchttp://cba.itlike.com/public/uploads/10001/20230321/c4b5c61e46489bb9b9c0630002fbd69e.jpg alt/divdiv classgoods-content text-ellipsis-2Apple iPhone 14 Pro Max 256G 银色 移动联通电信5G双卡双待手机/divdiv classgoods-tradep¥ 1299.00/ppx 3/p/div/divdiv classlist-itemdiv classgoods-imgimg srchttp://cba.itlike.com/public/uploads/10001/20230321/c4b5c61e46489bb9b9c0630002fbd69e.jpg alt/divdiv classgoods-content text-ellipsis-2Apple iPhone 14 Pro Max 256G 银色 移动联通电信5G双卡双待手机/divdiv classgoods-tradep¥ 1299.00/ppx 3/p/div/div/divdiv classtotal共12件商品总金额 ¥29888.00/divdiv classactionsspan v-iffalse立刻付款/spanspan v-iftrue申请取消/spanspan v-iffalse确认收货/spanspan v-iffalse评价/span/div/div /templatescript export default {} /scriptstyle langless scoped .order-list-item {margin: 10px auto;width: 94%;padding: 15px;background-color: #ffffff;box-shadow: 0 0.5px 2px 0 rgba(0,0,0,.05);border-radius: 8px;color: #333;font-size: 13px;.tit {height: 24px;line-height: 24px;display: flex;justify-content: space-between;margin-bottom: 20px;.status {color: #fa2209;}}.list-item {display: flex;.goods-img {width: 90px;height: 90px;margin: 0px 10px 10px 0;img {width: 100%;height: 100%;}}.goods-content {flex: 2;line-height: 18px;max-height: 36px;margin-top: 8px;}.goods-trade {flex: 1;line-height: 18px;text-align: right;color: #b39999;margin-top: 8px;}}.total {text-align: right;}.actions {text-align: right;span {display: inline-block;height: 28px;line-height: 28px;color: #383838;border: 0.5px solid #a8a8a8;font-size: 14px;padding: 0 15px;border-radius: 5px;margin: 10px 0;}} } /style3 导入注册 import { Tab, Tabs } from vant Vue.use(Tab) Vue.use(Tabs)(2) 点击 tab 切换渲染 1 封装获取订单列表的 API 接口 // 订单列表 export const getMyOrderList (dataType, page) {return request.get(/order/list, {params: {dataType,page}}) }2 给 tab 绑定 name 属性 van-tabs v-modelactive stickyvan-tab nameall title全部/van-tabvan-tab namepayment title待支付/van-tabvan-tab namedelivery title待发货/van-tabvan-tab namereceived title待收货/van-tabvan-tab namecomment title待评价/van-tab /van-tabsdata () {return {active: this.$route.query.dataType || all,page: 1,list: []} },3 封装调用接口获取数据 methods: {async getOrderList () {const { data: { list } } await getMyOrderList(this.active, this.page)list.data.forEach((item) {item.total_num 0item.goods.forEach(goods {item.total_num goods.total_num})})this.list list.data} }, watch: {active: {immediate: true,handler () {this.getOrderList()}} }4 动态渲染 OrderListItem v-foritem in list :keyitem.order_id :itemitem/OrderListItemtemplatediv classorder-list-item v-ifitem.order_iddiv classtitdiv classtime{{ item.create_time }}/divdiv classstatusspan{{ item.state_text }}/span/div/divdiv classlist div classlist-item v-for(goods, index) in item.goods :keyindexdiv classgoods-imgimg :srcgoods.goods_image alt/divdiv classgoods-content text-ellipsis-2{{ goods.goods_name }}/divdiv classgoods-tradep¥ {{ goods.total_pay_price }}/ppx {{ goods.total_num }}/p/div/div/divdiv classtotal共 {{ item.total_num }} 件商品总金额 ¥{{ item.total_price }}/divdiv classactionsdiv v-ifitem.order_status 10span v-ifitem.pay_status 10立刻付款/spanspan v-else-ifitem.delivery_status 10申请取消/spanspan v-else-ifitem.delivery_status 20 || item.delivery_status 30确认收货/span/divdiv v-ifitem.order_status 30span评价/span/div/div/div /templatescript export default {props: {item: {type: Object,default: () {return {}}}} } /script
http://www.pierceye.com/news/71286/

相关文章:

  • 济南 外贸网站建设源码网站建设步骤
  • 国内外高校门户网站建设的成功经验与特色分析长春网站建设路
  • 怎样做自己可以发布消息的网站网站备案注销申请表
  • 重庆市做网站的公司有哪些自己的网站怎么做网盘
  • 北京网站搜索引擎优化推广外链发布
  • 个域名的网站建设方案书网站搭建玩要多长时间
  • 弹性盒子做自适应网站南京做网站dmooo
  • 网站制作公司怎么赚钱wordpress设置不被搜索
  • 网站建设管理内容保障制度怎么做网站促收录
  • 手机网站注册yellow免费观看高清
  • 做满屏网站的尺寸诸塈市建设局网站
  • 做网站用哪个写比较好建设工程信息管理网
  • 技术网站响应式网站设计优点
  • 网站如何做301中国建筑网官网查询证书
  • 班级网站建设模板下载免费推广网站2023
  • 爱途 中山网站制作长春手机建站模板
  • 网站开发的设计思路wordpress文本小工具栏
  • html5移动网站制作教程网店代运营怎么做
  • 什么是营销渠道广东网络seo推广
  • 大通网站建设做旅游业务的商业网站
  • 手机网站开发下载高端网站建设 司法
  • 保险网站源码开发公司会计工作职责
  • 现在外贸做哪个网站好建设网站的重要性
  • 耒阳住房与建设局网站游戏开发代码
  • wordpress自动跳转到手机版网站怎么做关键词怎么优化
  • 高端网站服务范围北京互联网公司大厂有哪些
  • 2018年网站开发技术用wordpress搭建商城
  • 网站建设项目内容学做衣服上什么网站好
  • 如何用c 做网站背景中国移动生活app下载安装
  • 农八师建设兵团社保网站电子商务网站建设如何策划与实施