返回顶部
首页 > 资讯 > 前端开发 > JavaScript >vue移动端项目代码拆分的示例分析
  • 384
分享到

vue移动端项目代码拆分的示例分析

2024-04-02 19:04:59 384人浏览 泡泡鱼
摘要

这篇文章给大家分享的是有关Vue移动端项目代码拆分的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。首先代码拆分应该保证本地开发的时候只有一套代码,提取所有公共页面,并且分

这篇文章给大家分享的是有关Vue移动端项目代码拆分的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

首先代码拆分应该保证本地开发的时候只有一套代码,提取所有公共页面,并且分别提取小程序和app的独立js方法,避免开发完小程序端vue,然后粘贴复制到App端的繁琐操作。
直接看图最清晰,拆分前目录结构:

拆分后目录结构:

vue移动端项目代码拆分的示例分析

拆分前项目目录结构

vue移动端项目代码拆分的示例分析

拆分后项目目录结构

目录拆分好之后,开始拆分代码。由于部署到生产环境的时候只能App端部署App端,小程序端部署小程序端,那么在本地开发过程中为了调试不同端的页面就需要进行路由配置,所以对路由配置文件route.list.js做了修改:
拆分代码前,route.list.js中将所有页面JS文件的相对路径放在一个数组里:

define(
 [
  ‘../xxx/xxx/user.js',
  ‘../xxx/xxx/Goods.js',
  …
  …
 ]
)

拆分后,route.list.js中按public、mobile_app、wechat_mini 分别定义数组,这样如果现在正在开发小程序端的vue,那么则将public和wechat_mini的数组合并到一起,开发app端的vue则将public和moblie_app的数组合并到一起,合并数组使用es6扩展运算符(…)。

var public_goods = [];
var mini_goods = [];
var app_goods = [];
var fun = (isWechatMini) => {
  if(isWechatMini){
    return [
     …public_goods,
     …mini_goods
    ]
  } else {
    return [
     …public_goods,
     …app_goods
    ]
  }
}
define(
  fun(true)
)

将公共部分和独立部分的页面拆分之后,进一步分析代码:App端和小程序端相互独立的大多是支付功能,分享功能等涉及到需要原生处理的地方,并且会在多个页面,多个业务中出现,那么就将App独立的vue代码拆分到一个公共JS中(app-common.js),将小程序独立的vue代码拆分到一个公共JS中(mini-common.js),在需要的页面中引入即可。就商品购买支付功能为例:

拆分前:

define([‘vue', ‘axiOS', ‘text!/File/html/goods/goodsPay.html'], (vue, axios, Template) => {
  var App = {
   data() {

   },
   template: Template,
   mounted() {

   },
   methods: {
     pay(){
       if(isWechatMini){
         //这里是小程序支付
       } else {
         //这里是App支付
       }
     }
   }
  };

  return{
    app: App
  };
  
});

业务复杂的情况下,会有多层if else,代码太冗余。

拆分后:

小程序端的商品支付购买页面:

define([‘vue', ‘axios', ‘text!/File/Html/mini/goods/goodsPay.html', ‘mini-common'], (vue, axios, Template, common) => {
  var App = {
    data() {

    },
  template: Template,
  mounted() {

  },
  methods: {
     pay(){
       //调用mini-common中定义的支付方法
       common.pay();
     }
  }
 };

 return{
  app: App
 };
  
});

App端的商品购买支付页面只需要将引入的JS换成app-common即可:

define([‘vue', ‘axios', ‘text!/File/Html/app/goods/goodsPay.html', ‘app-common'], (vue, axios, Template, common) => {
  var App = {
    data() {
    },
  template: Template,
  mounted() {

  },
  methods: {
    pay(){
      //调用app-common中定义的支付方法
      common.pay();
    }
   }
  };
  return{
   app: App
  };
  
});

本地开发完后,部署到服务器只需要将public目录下和wechat_mini下的文件复制粘贴到打包工具打包即是小程序端的代码,public和mobile_app打包即是app端的代码。

感谢各位的阅读!关于“vue移动端项目代码拆分的示例分析”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

--结束END--

本文标题: vue移动端项目代码拆分的示例分析

本文链接: https://lsjlt.com/news/75903.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • vue移动端项目代码拆分的示例分析
    这篇文章给大家分享的是有关vue移动端项目代码拆分的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。首先代码拆分应该保证本地开发的时候只有一套代码,提取所有公共页面,并且分...
    99+
    2024-04-02
  • vue移动端项目缓存问题的示例分析
    这篇文章给大家分享的是有关vue移动端项目缓存问题的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。先描述下问题场景:A页面->B页面->C页面。假设A页面是列...
    99+
    2024-04-02
  • vue 项目代码拆分的方案
    目录背景 目的 拆分前 流程设计目录结构设计存在的问题 拆分后 流程设计目录结构设计解决的问题 关键代码总结 其他实现方式 背景 由于之前的数据库防火墙产品与数据库审计产品使用的是...
    99+
    2024-04-02
  • webpack代码拆分的示例分析
    这篇文章主要介绍webpack代码拆分的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!如果利用 webpack 将项目中的所有代码打包在一起,很多时候是不适用的,因为代码中有...
    99+
    2024-04-02
  • vue中移动端适配的示例分析
    小编给大家分享一下vue中移动端适配的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、方法一:rem 布局在主入口:i...
    99+
    2024-04-02
  • Vue.js项目API、Router配置拆分的示例分析
    这篇文章主要介绍Vue.js项目API、Router配置拆分的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!前后端分离开发方式前端拥有更高的控制权随着前端框架技术的飞速发展,...
    99+
    2024-04-02
  • vue中移动端自适应的示例分析
    这篇文章给大家分享的是有关vue中移动端自适应的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。方案1:直接引入js  (自己 写的动态改变fontsize的js...
    99+
    2024-04-02
  • webpack4之splitchunksPlugin代码包分拆的示例分析
    小编给大家分享一下webpack4之splitchunksPlugin代码包分拆的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解...
    99+
    2024-04-02
  • 移动端meta行的示例分析
    小编给大家分享一下移动端meta行的示例分析,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧! width: viewport 的宽...
    99+
    2024-04-02
  • flask和vue前后端分离项目部署的示例代码
    前段时间开发了一个项目, 我后端用的是flask框架写接口,前端用的是vue框架,项目前后端完全分离,部署的时候遇到一点问题,记录一下. 部署环境:centos6.5、Python...
    99+
    2024-04-02
  • vue-cli@2.x项目迁移日志的示例分析
    这篇文章给大家分享的是有关vue-cli@2.x项目迁移日志的示例分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。vue-cli@2.x项目迁移日志虽然 vue-cli@3 早...
    99+
    2024-04-02
  • vue项目实战的示例分析
    这篇文章主要为大家展示了“vue项目实战的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue项目实战的示例分析”这篇文章...
    99+
    2024-04-02
  • vue移动端项目中如何实现页面缓存的示例代码
    背景 在移动端中,页面跳转之间的缓存是必备的一个需求。 例如:首页=>列表页=>详情页。 从首页进入列表页,列表页需要刷新,而从详情页返回列表页,列表页则需要保持页面缓...
    99+
    2024-04-02
  • node vue项目开发之前后端分离的示例分析
    这篇文章主要介绍node vue项目开发之前后端分离的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!node vue项目开发最近看了近一周的vue开发,有诸多感触,我之前接触...
    99+
    2024-04-02
  • html中移动端1px的示例分析
    这篇文章主要为大家展示了“html中移动端1px的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html中移动端1px的示例分析”这篇文章吧。问题为什么...
    99+
    2024-04-02
  • html5中video移动端的示例分析
    这篇文章主要为大家展示了“html5中video移动端的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“html5中video移动端的示例分析”这篇文章吧...
    99+
    2024-04-02
  • React项目迁移Webpack Babel7的示例分析
    这篇文章主要介绍React项目迁移Webpack Babel7的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!这里简单说下 React 项目的一些配置;首先我们新建项目 re...
    99+
    2024-04-02
  • vue中项目结构的示例分析
    这篇文章主要为大家展示了“vue中项目结构的示例分析”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue中项目结构的示例分析”这篇文章吧。新建一个项目之后,我们...
    99+
    2024-04-02
  • Vue+Django项目部署的示例分析
    这篇文章主要介绍Vue+Django项目部署的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!本地项目配置1 复制 luffy/settings/dev.py为prop.py修...
    99+
    2024-04-02
  • Vue实现移动端日历的示例代码
    工作中遇到一个需求是根据日历查看某一天/某一周/某一月的睡眠报告,但是找了好多日历组件都不是很符合需求,只好自己手写一个日历组件,顺便记录一下。 先看看UI给的设计图和,需求是有数据...
    99+
    2023-05-14
    Vue实现移动端日历 Vue实现日历 Vue日历
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作