VUE项目问题

Vue 跳转相同路由不同参数,解决页面数据不自动刷新

 watch: {
            //监听相同路由下参数变化的时候,从而实现异步刷新
            '$route'(to,from){
                this.initData();
            },
        },

vue 项目, 父组件中每次点击按钮重新加载子组件,(重新生成dom 元素)

根据这个原理我们可以给key 直接绑定一个 时间戳
父组件
<template>
    <div>
        <div>
            <h1>父级</h1>
            <button @click="handleLoad">点击重新加载子级</button>
        </div>
        <children :key="timer"></children>
    </div>
</template>
<script>
import children from '@/components/parent/children'
export default {
    name: 'parent',
    components: { children },
    data () {
        return {
            timer: ''
        }
    },
    methods: {
        handleLoad () {
            this.timer = new Date().getTime()
        }
    }
}
</script>
--------------------- 
子组件
<template>
    <div>
        子级
    </div>
</template>
<script>
export default {
    name: 'children',
    data () {
        return {}
    },
    created () {
        console.log('重新加载啦')
    }
}
</script>
--------------------- 
版权声明:本文为CSDN博主「泥猴桃」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/shi851051279/article/details/92802027

table表格默认全部选中

获取到数据以后
this.$nextTick(()=>{
        for(let i = 0;i<this.peopleList.length;i++){
             this.$refs.multipleTable.toggleRowSelection(this.peopleList[i])
        }
})
要在table上面加上 ref="multipleTable"
Vue input 监听
使用 v-on:input="change" 实现即可

App.vue

<template>
<div>
<md-field>
<label>Initial Value</label>
<md-input v-model="initial" v-on:input="change"></md-input>
</md-field>
</div>
</template>

<script>
export default {
name: "TextFields",
data: () => ({
initial: "Initial Value"
}),
methods: {
change() {
console.log(this.initial)
}
}
};
</script>

Vue.$set()的使用方法
受现代 JavaScript 的限制 (以及废弃 Object.observe),Vue 不能检测到对象属性的添加或删除。由于 Vue 会在初始化实例时对属性执行 getter/setter 转化过程,所以属性必须在 data 对象上存在才能让 Vue 转换它,这样才能让它是响应的。

官方定义:
Vue 不允许在已经创建的实例上动态添加新的根级响应式属性 (root-level reactive property)。然而它可以使用 Vue.set(object, key, value) 方法将响应属性添加到嵌套的对象上:

        //对象复制
        cloneObjectFn (obj){ // 对象复制
          return JSON.parse(JSON.stringify(obj))
        },
          let oldObj='';
          let newObj='';
          oldObj=this.cloneObjectFn(val);
          newObj=this.cloneObjectFn(this.formList.ajqkBgRenList[index-1]);
          this.$set(this.formList.ajqkBgRenList,index,newObj);
          this.$set(this.formList.ajqkBgRenList,index-1,oldObj);

JS将中文括号转换为英文括号

     aaa(srt){
        var reg = /[\(]/g,reg2 = /[\)]/g;
        srt =  srt.replace(reg,"(").replace(reg2,")");
        return srt
      }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • (方法1).sync 修饰符 在有些情况下,我们可能需要对一个 prop 进行“双向绑定”。不幸的是,真正的双向绑...
    SentMes阅读 5,663评论 0 8
  • 1.css 局部样式 vue 中style样式添加scoped属性表示它的样式只作用于当前组件,样式私有化。 但是...
    AAA前端阅读 6,387评论 0 6
  • Vue.js(读音/vjuː/, 类似于 view)是一个构建数据驱动的web 界面的渐进式框架。Vue.js的目...
    xingyunfuhao阅读 3,878评论 0 0
  • VUE Vue :数据驱动的M V Vm框架 m :model(后台提供数据),v :view(页面),vM(模板...
    wudongyu阅读 10,747评论 0 11
  • 在开发过程中,我们时常会遇到这样一种情况:当vue的data里边声明或者已经赋值过的对象或者数组(数组里边的值是对...
    sxh不是帅小伙阅读 4,090评论 0 0