• vue项目优化


    vue项目性能优化

    1.动态加载组件

      介绍在component文件下有很多的组件,在其他的组件引入,势必会有很多的import的引入,麻烦。

           所以动态引入在main.js,之后在其他的vue文件中直接使用,无需导入

     

     1 //cptsRegister.js文件
     2 
     3 import Vue from 'vue'
     4 
     5 function capitalizeFirstLetter (str) {
     6     return str.charAt(0).toUpperCase() + str.slice(1)
     7 }
     8 
     9 // 用来匹配.vue的前缀函数
    10 function validateFileName(str) {
    11     return /^S+.vue$/.test(str) && str.replace(/^S+/(w+).vue$/, (res, $1) => capitalizeFirstLetter($1))
    12 }
    13 
    14 
    15 const requireComponent = require.context('./', true, /.vue$/)
    16 
    17 // 遍历匹配到的文件夹及文件名,并且遍历得到每一个
    18 requireComponent.keys().forEach(filePath => {
    19     
    20     // 得到每一个.vue文件中的属性方法和组件的name值
    21     const componentConfig = requireComponent(filePath)
    22     // 得到文件名的前半部分index
    23     const fileName = validateFileName(filePath)
    24     // 判断如果是以index开头命名的就返回组件的name值来注册组件,否则就使用文件名来注册
    25     
    26     const componentName = fileName.toLowerCase() === 'index' ? capitalizeFirstLetter(componentConfig.default.name) : fileName
    27     Vue.component(componentName, componentConfig.default || componentConfig)
    28 })
    29 
    30 
    31 
    32 // main.js
    33 //在main.js引入
    34 import './components/cptsRegister.js'

    1.1.目录结构

    2.全局过滤器的优化

      介绍在开发过程中我们可能会遇到很多的全局过滤器,一个一个的注册会很麻烦,所以一次性注册所有的全局过滤器

     1 // filterRegister.js
     2 
     3 const filters = {
     4     compNumber: function (title) {
     5         return title + '张雪冬'
     6     }
     7 }
     8 
     9 export default filters
    10 
    11 
    12 
    13 // main.js
    14 
    15 // 全局注册所有的过滤期
    16 
    17 import filterRegister from './utils/filterRegister.js'
    18 
    19 for (let key in filterRegister) {
    20   Vue.filter(key, filterRegister[key])
    21 }
  • 相关阅读:
    绑定方式开始服务&调用服务的方法
    采用服务窃听电话示例
    后台服务运行示例
    Android短信监听器——示例
    利用广播实现ip拨号——示例
    Android图片的合成示例
    IIS 7.5 发布Web 网站步骤
    C# 中 多线程同步退出方案 CancellationTokenSource
    UML 类图常用表示方法.
    Socket Receive 避免 Blocking
  • 原文地址:https://www.cnblogs.com/zxuedong/p/12520862.html
Copyright © 2020-2023  润新知