常用但是不熟悉

简介: 常用但是不熟悉

1==>mapGetters 取vuex中的值 data:2020.2.28


   1==> 引入

import { mapMutations, mapGetters  }  from "vuex"  // mapGetters 取值的辅助函数

 

2==> 注入在computed中注入


computed:{
             //mapGetters来取值
              ...mapGetters(['sysname','datatest']);//数组的形式
    }, 


3==>取值 this.sysname 就可以输出


2==> mapMutations修改Vue中的值 data:2020.2.28


   1==> 引入mapMutations,这个辅助函数可以设置vuex中的值


import { mapMutations, mapGetters }  from "vuex"

  2==>放在methods中的最后一处;key:’value'的形式(value有引号,是你的映射设置),key是设置的方法


..mapMutations({
                  changesysname:'SYSNAME',
      })

3==> 修改值


 this.changesysname({
       name:'数据改为123',  //key是state中的,value是你要保存的值
    })


问题


   1==>如何快速的更改state中的值; 可以使用对象合并这个方法来解决哈 已经解决了ok

 

   2==>说一说watch和computed的区别;并在什么情况下使用???


   3==>刷新页面,vuex中的值,如何才能够不丢失????


3==> Object.assign(目标对象, 被合并的对象) data:2020.2.28


// Object.assign(目标对象, 被合并的对象)
 // 如果被合并的对象于目标对象有相同的key,会出现覆盖;
 // 最后输出的是目标对象
 let form = {
    name: '张三',
    age: 19,
 }
 let obj = {
   sex: '男',
   age: 20, //会出现覆盖
 }
 Object.assign(form, obj);
 console.log(form);
 {name: "张三", age: 20, sex: "男"}


Object.assign(目标对象, 被合并的对象)


let form = {
    name: '张三',
    age: 19,
   }
  //vuex中,比如我只想修改age为34
  Object.assign(form, {
    age: 34
 });
 console.log(form);


4==>快速修改vuex对象中的某一个key值 data: 2021.3.1


state: {
    obj:{
      name:"张三",
      age:23,
      sex:'男'
    }
  },
  // 同步  第一个形参 代表state
  // name形参代表的是  你此时传递过来的参数
  mutations: {
    getobj:(state, data)=>{
      state.obj = data; //赋值
    }
  },
  hander(){
        //快速修改vuex对象中的某一个key值    
         this.$store.commit("getobj",
            Object.assign(
                 this.$store.state.obj,//取出原来的值,是一个对象
                 {age:this.$store.state.obj.age + 1} //将要被修改的值
                ) 
          );
            console.log( this.$store.state.obj );
   },


5==>字符串比较大小时,是不会进行隐式转换的(ok)


let aa = '2021108';
   let bb = '202145';
        if (aa < bb) {
            console.log('bb大')
        } else {
            //走了这里
            console.log('aa大')
        }


字符串在进行比较的时候;


是不会进行隐私转换的;


运算符  -    *   /  % 这写是个会进行隐私转换


ps加号 + 是不会进行隐式转换的


let aa = '2021108';
let bb = '202145';
console.log(aa + bb);
console.log(aa - bb); 会
console.log(aa * bb);  会
console.log(aa / bb); 会
console.log(aa % bb); 会

6==>


A==>B这样两个页面哈;


如果B页面进行一系列的逻辑操作后;


要进入到A页面;这个时候你需要注意一下;


此时不要使用this.$router.psuh


应该使用this.$router.go(-1);


这样才是正确的哈


7==>


A-->B--C这三个页面;


如果B页面依靠了localstoage;C页面进行完逻辑操作后;清除了localstoage;

这样是有问题的;


如果用户操作完后,点击返回键;返回到B页面。此时的B页面localstoage的值已经为空了;


肯定是会报错的哈;


解决办法是不要去清除这个值


8==> 字符串的截取 stringObject.substr(start,length)


//截取的是开始与字符串长度
stringObject.substr(start,length) 
let str='hellonihao';
//一定要保证str是一个字符串;如果是数字会报错的哈;
//转化为字符串可以使用 toString  和  + ''通过加号连接
str1 = str.substr(0, str.length-1);//删除字符串最后一位;
删除第一位
var str = 'abc,def,hgi';
str = str.substr(1); //删除第一个字符
console.log(str);//bc,def,hgi


相关文章
|
8月前
了解、熟悉、掌握、精通 浅解
了解、熟悉、掌握、精通 浅解
82 0
Spooling技术简单熟悉
Spooling技术简单熟悉
112 0
|
12天前
|
人工智能 Linux 程序员
从零开始_先跑起来_入门编程选什么系统
从零开始_先跑起来_入门编程选什么系统
|
7月前
|
XML 安全 前端开发
必知的技术知识:jinjia2基本用法
必知的技术知识:jinjia2基本用法
182 1
|
7月前
|
前端开发 JavaScript Java
快速入门Web开发(中)后端开发(有重点)(1)
快速入门Web开发(中)后端开发(有重点)(1)
58 0
|
IDE 程序员 Go
如何借助工具快速生成代码?初学者容易踩的坑有哪些?
这篇内容继续分享重点内容:如何借助工具快速生成代码?初学者容易踩的坑有哪些?
184 0
如何借助工具快速生成代码?初学者容易踩的坑有哪些?
|
JSON JavaScript 安全
那些你熟悉而又陌生的函数
五层境界 我不知道我不知道 我知道我不知道 我知道我知道 我不知道我知道 第三层境界以上的兄台,可以直接离开了。 至于第五层境界,无需知道还是不知道。 废话不多说,进入正题,一起探索那些你熟悉和又陌生的函数。
151 0
那些你熟悉而又陌生的函数
|
存储 消息中间件 运维
灵魂 36 问,让你快速熟悉一个系统
面对一个完全陌生的系统,如何快速的熟悉并上手?本文将从三个方面进行总结,提供一个系统的方法,同时也可以用来 review 已有的系统,查漏补缺。
8382 0
灵魂 36 问,让你快速熟悉一个系统
|
Java
熟悉Java编程环境
熟悉Java编程环境
122 0
熟悉Java编程环境
|
XML 存储 Java
不熟悉的编程语言,项目如何开展?
引言 公司中的开发一般是沿着一种核心开发语言如Java、C/C++、PHP进行相关开发。但由于产品新需求、项目新需要,免不了会使用自己不擅长的语言开发。甚至,现在全栈工程师也比比皆是。对于经验不丰富的职场人,如何开展工作呢? 结合我近期的项目经历,我说下我的经验和教训。
207 0
不熟悉的编程语言,项目如何开展?