Vue 跨平台性能优化十法

2024-06-22 4212阅读

 Vue.js 开发能够同时运行在不同平台(如 Web、移动平台和桌面平台)的应用程序。以下是一些常见的跨平台解决方案:

Vue 跨平台性能优化十法 第1张
()

 1.

  1. 使用 Vue.js 官方发布的框架:

    Vue 跨平台性能优化十法 第2张
    ()
    • Vue.js:主要用于 Web 开发。

    • Vue Native:使用 Vue 语法开发原生应用(需要结合React Native)。

    • Quasar Framework:一个构建跨平台桌面和移动应用的开源框架。

1-2    

Vue Native 是一个框架,它允许开发者使用 JavaScript 来构建跨平台的原生移动应用。它是基于 React Native 的封装,所以利用 Vue Native,你可以实现React Native的所有功能。这个框架特别之处在于它结合了 Vue.js 的简洁性和 React Native 的广泛适用性,让你能以 Vue.js 的语法构建iOS和Android的移动应用

1-3-1  什么是Quasar?

Quasar(发音为/kweɪ.zɑɹ/)是MIT许可的开源框架(基于Vue),可帮助Web开发人员创建:

  • 响应式网站
  • PWA(Progressive Web App)
  • 通过Apache Cordova构建移动APP(Android,iOS,…)
  • 多平台桌面应用程序(使用Electron)

    Quasar允许开发人员编写一次代码,然后使用相同的代码库同时部署为网站、PWA、Mobile App和Electron App。使用最先进的CLI设计应用程序,并提供精心编写,速度非常快的Quasar Web组件。

    当使用Quasar时,你不需要像Hammerjs,Momentjs或Bootstrap这样的额外重型库。它拥有这些功能,而且体积很小!

    1-3-2

    开箱即用。

    1-3-3

    两个主题(将有更多)

    该框架支持两种最常用的主题 - Material主题和iOS主题。

    1-3-4

    通过Quasar CLI提供无与伦比的开发人员体验

    当使用Quasar的CLI时,开发人员将受益于:

    • 无论是网站,PWA,移动APP(直接在手机上还是在仿真器上)或Electron应用程序,更改应用程序源代码时,都会进行状态保持热重载。开发人员只需更改他们的代码,就可以看到应用即时更新,而不需要任何页面刷新。
    • 状态保持编译错误覆盖。
    • 使用ESLint进行Lint-on-save - 如果开发人员只喜欢使用他们的代码
    • ES6代码转译
    • Sourcemaps
    • 更改构建选项不需要手动重新加载开发服务器
    • 更多领先的开发工具和技术

      1-3-5

      底层技术

      VueBabelWebpackCordovaElectron

      除了Vue(需要半天的时间就能学会并永远改变你),你并不需要知道其他技术。他们中的大多数都已集成并已为您配置。

      Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。Cordova还提供了一组统一的JavaScript类库,以及为这些类库所用的设备相关的原生后台代码

      Electron的正确读法应该是[iˈlektrɒn]   使用 JavaScript、HTML 和 CSS 构建跨平台桌面应用程序

      1. 2    .使用服务端渲染(SSR)或静态站点生成(SSG):

        • Nuxt.js(Vue.js 的 SSR 框架)

        • Gridsome(基于 Vue.js 的 SSG 框架)

      2-1.服务端渲染又称SSR(Server Side Render)实在服务端完成页面的内容,而不是在客户端通过AJAX获取数据

      优势:更好的SEO(搜索引擎),由于搜索引擎爬虫抓取工具可以直接查看完全渲染的页面

      Nuxt.js是一个基于Vue.js的轻量级应用框架,可用来创建服务端渲染(SSR)应用,也可以充当静态站点引擎生成静态站点应用。

      https://zh.nuxtjs.org

      2-2Gridsome 让开发人员可以轻松地构建静态生成的网站和应用程序,这些网站和应用程序 天生速度快

         2-2-1 

      便捷的本地开发

      使用

       Vue.js、 GraphQL 等现代工具以及 Node.js 和 JavaScript 生态系统内所有强大的功能来构建网站。在本地开发时,可以立即对任何代码的更改进行 热加载(hot-reloading)

      2-2-2

      天生快速

      Gridsome 利用 PRPL 模式将超高性能融入到每个页面中。代码拆分、资源优化、图像渐进加载和链接预取功能开箱即用。用 Gridsome 构建的站点在默认配置下就能获得几乎完美的页面速度得分。

      2-2-3

      基于 Jamstack 技术构建

      web 的未来将是 JavaScript、API 和 Markup(标记语言) - 即 Jamstack。Gridsome 利用强大的静态站点生成技术、JavaScript 和 API 来创建令人惊叹的现代 web 体验。

      2-2-4

      部署简单、安全

      无须服务器、无须数据库、只有文件。将你的整个站点直接部署到 CDN 上,然后无须费心打理。用 Gridsome 构建的网站可以处理少至几千多至百万次的点击而不会出现故障,并且无须高昂的服务器费用。

      Vue 跨平台性能优化十法

      1. v-for 遍历必须为 item 添加 key,且避免同时使用 v-if

      2. 长列表性能优化

         纯粹的数据展示,不会有任何改变,我们就不需要 Vue 来劫持我们的数据,减少组件初始化的时间,可以通过 Object.freeze 方法来冻结一个对象,一旦被冻结的对象就再也不能被修改了。

      export default {
        data: () => ({
          users: {}
        }),
        async created() {
          const users = await axios.get("/api/users");
          this.users = Object.freeze(users);
        }
      };
      3. vue 组件中的 data 是函数而不是对象

      4. 组件懒加载   对于页面上不是首次加载就需要的组件,可以采用异步组件或路由懒加载的方式,延迟加载它们,提高首屏加载速度

      5.合理使用 keep-alive: 对于经常切换的组件,可以使用 keep-alive 缓存组件实例,避免重复创建和销毁,提高渲染性能。

      6.避免频繁的 Watcher 或深度监听: 

      7.使用异步组件和路由懒加载:

      8.利用事件修饰符: Vue.js 提供了一些方便的事件修饰符,如 .stop、.prevent、.once 等,合理使用它们可以减少不必要的事件监听和处理。

      9缓存重复获取的数据: 通过合理使用 Vuex 状态管理库或本地缓存等方式,避免重复请求和计算相同的数据,提高性能和响应速度。

      10.优化计算属性和监听器: 尽量避免在计算属性或监听器中进行复杂的计算或操作,因为它们会在每次数据变化时都被调用。确保这些函数保持简单且高效。


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]