• vue实际项目中遇到的问题和解决方式


    1、组件中绑定的变量发生变化,页面却没有变化

    解决方案:

    可以为组件提供一个动态key,执行完方法时,变更key,组件会刷新。

    <Table
          :columns="columns"
          :data="dataList"
          :key="reload"
          border
          max-height="495"
          @on-selection-change="onSelectionChange"></table>
          
    data() {
    	return {
    		reload: Date.now() // 绑定一个动态key
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    或者调用强制刷新方法:this.$forceUpdate()

    2、iview组件表单验证的时候,不走验证validate方法,也不报错。

    原因分析:

    这个问题排查了比较久,每次走到validate的时候,就自动结束了,也没报错,后来debugger发现,validate方法根本没进去。后来知道了,validate是Promise,异步的,表单中包含日期组件,当给日期组件绑定的变量赋值为字符串时,第一次赋值,组件会自动转换为时间对象,第二次赋值不会,依然是字符串。此时点击确定提交表单的时候,validate方法的Promise一直处于未完成(pending)的状态,所以不会再次触发。

    解决方案:

    日期组件需要回显日期的时候,将字符串变量转换成时间对象。

    3、git拉项目,希望将项目的所有分支拉下来的方式

    git clone 地址 
    git branch -r | grep -v '\->' | while read remote; do git branch --track "${remote#origin/}" "$remote"; done
    git fetch --all
    git pull --all
    
    • 1
    • 2
    • 3
    • 4

    4、为同等级类名,添加CSS样式

    <div class="container main"></div>
    
    • 1
    .containr {
    	&.main {
    		background-color: #fff;
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5

    5、git常用操作

    • 拉取指定分支代码
    git clone -b 分支名 项目地址
    
    • 1
    • 提交代码的一般步骤
    git pull
    git add .
    git commit -m "备注信息"
    git push
    
    • 1
    • 2
    • 3
    • 4

    使用可视化工具更加方便

    • 切换分支
    git checkout 分支名
    
    • 1
    • 本地创建新分支,并提交分支到远程仓库
    git checkout -b 分支名
    git push -u origin 分支名
    
    • 1
    • 2
    • 如果当前分支是master,将release-v1.0分支合并到master
    git merge release-v1.0
    
    • 1

    6、浏览器获取url和?后的内容

    window.location.href
    window.location.search
    
    • 1
    • 2

    7、连接服务器常用linux指令

    • 连接
    ssh admin@IP地址
    //切root用户
    sudo su
    
    • 1
    • 2
    • 3
    • 删除相关
    // 删除所有文件
    rm -rf *
    // 删除空文件夹
    rmdir 文件夹名称
    // 删除某个文件
    rm 文件名
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 移动某个路径的文件到当前路径
    mv 某个文件的路径 ./
    
    • 1
    • 解压zip文件
    unzip 文件名
    
    • 1

    8、vue模板中变量被冲掉的问题

    尽量不要在beforeCreate中赋值变量,不然会被data中的变量默认值冲掉。

    9、关于在vue中使用lodash的throttle节流方法

    直接在方法中调用是没有效果的。
    错误方式:

    import _ from 'lodash'
    
    export default {
    	methods: {
    		click() {
    			_.throttle(()=>{
    				console.log('hello')
    			}, 1000)
    		}
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    正确的方式

    import _ from 'lodash'
    
    export default {
    	methods: {
    		click:_.throttle(function() {
    			console.log('hello')
    		}, 1000)
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    10、希望屏蔽某个容器的现有方法

    使用css3的pointer-events: none;

  • 相关阅读:
    枚举与#define 宏的区别
    【21天学习挑战赛学习打卡】顺序查找
    Leetcode 33 搜索旋转排序数组
    【博客494】K8s TLS Bootstrap机制
    软考高级之系统架构师之项目管理
    C# Socket
    使用rpm包制作本地镜像源(本地yum源)
    FreeRTOS最全教程(目录)
    spark原理和实践
    js第十一章
  • 原文地址:https://blog.csdn.net/weixin_41122036/article/details/124386423