9.class常用操作:

:class="packUp ? 'search-form-btn active fr' : 'search-form-btn fr'"
:class=" timeClass "   this.timeClass ="class1 class2"
:class="{'active':queryParam.sort=='asc'}"

8.watch监听属性,顾名思义需要先在data里面定义了才能监听到 ; computed 计算属性,不能在data中定义,

watch中能执行异步操作例如 setTimeout函数,computedu不可以  会返回undefined,只能直接return;

简写形式都是不需要改变数据,只获取数据才用,否则都需要写出复杂格式

<template>
<div>
<p>mesage:{{newMessage}}</p>
<p>reversed message:"{{reverMessage}}"</p>
<button @click="changeInfo">改变info</button>
<ul>
<li v-for="item in list">{{item.name}}--{{item.age}} </li>
</ul>
</div>
</template> <script>
export default{
name:"myCom",
data(){
return{
message:'hellow',
message2:'world',
info:{
a:1,
b:'zhangsan'
},
list:[{
name:'zhangsa',
age:12
},{
name:'lisi',
age:12}], }
},
watch:{
info:{//对象 改变对象的属性触发,简写是不会触发的
deep:true,//监视多层数据改变,针对对象和数组
handler(current){
console.log('info发生了改变',current);
},
},
list:{//数组 改变数组里面的某个值触发
deep:true,
handler(current){
console.log('list发生了改变',current);
}
},
message(current,old){ //简写 不改变数据时这样写
console.log('info发生了改变',current,old);
},
},
computed:{
reverMessage:function(){//简写形式
return (this.message||'').split("").reverse().join('')
},
newMessage:{ //需要修改数据的时候要这样写
get(){
return this.message+this.message2;
},
set(v){
return v;
}
}
},
methods:{
changeInfo(){
this.info.a = this.info.a+1;
this.message = 'name';
this.list[1].age=this.list[1].age+1;
},
}, }
</script> <style>
</style>

  

------------------------------------------------------------------------------------从这开始倒着写-----------------------------------------------------------------------------

1.路由跳转:非view页面要实现跳转:

import router from '@/router' //先引入router才能后面使用push
router.push({ path:'/login' });

2. nextTick:在下次 DOM 更新循环结束之后执行延迟回调。在修改数据之后立即使用这个方法,获取更新后的 DOM。

     pick:从 object 中选中的属性的对象。使用需要先引入:import pick from 'lodash.pick'

this.$nextTick(() => {
   this.form.setFieldsValue(pick(this.model,'userName','inDate','outDate','userLevel','userTag','extra1','extra2'))
//时间格式化
});

3.props数据类型:Number、String、Boolean、Object、Array、DateFunctionSymbol

// 简单语法
Vue.component('props-demo-simple', {
props: ['size', 'myMessage']
})
// 对象语法,提供验证
Vue.component('props-demo-advanced', {
props: {
// 检测类型
height: Number,
// 检测类型 + 其他验证
age: {
type: Number,
default: 0,
required: true,
validator: function (value) {
return value >= 0
}
}
}
})

4.<router-link></router-link> 添加事件监听函数

       <router-link
:to="{ path: tag.path, query: tag.query, fullPath: tag.fullPath }"
:title="tag.title"
tag="span"
@click.native="showCurrentPage(tag)" //tag为当前的路由
>{{tag.title}}</router-link>

5.模板字符串换行显示 :

例如:let a =`aaaaa
                        bbbb`;

1.使用textarea标签保留样式

2.pre标签 :被包围在 pre 元素中的文本通常会保留空格和换行符

其他的标签暂未发现有保留的功能,当a有空格的时候是有空格的样式展示出来且只有一个空格

6.动态组件切换 简单例子两个组件相互切换:

<template>
<div>
<keep-alive>
<!-- 动态组件 -->
<component :is="componentName"></component> <!-- <my-com v-if="name=='myCom'"></my-com>
<my-com-two v-show="name=='myComTwo'"></my-com-two> -->
</keep-alive>
<button @click="changeCom">切换组件</button>
</div>
</template> <script>
import myCom from './myCom.vue' //组件一
import myComTwo from './myComTwo.vue' //组件二
export default{
name:"activeCom",
components:{myCom,myComTwo},
data:function(){
return{
componentName:myCom,
name:'myCom'
}
},
methods:{
changeCom(){
let {name} = this;
this.componentName = name=='myCom'?myComTwo:myCom;
this.name= name=='myCom'?'myComTwo':'myCom';
console.log("com:",this.componentName);
}
}
}
</script> <style>
</style>

7.beforeDestroy和destroyed触发条件:关闭当且页面或者关闭路由,但是v-if或者v-show这样的切换都不会触发这两个生命周期

 

vue 项目中笔记-持续更新的更多相关文章

  1. vue 项目中的坑 在项目中遇到 持续更新ing

    1.vue2.0 不支持 v-html 后绑定的内容使用过滤,可是有时候过滤必须使用-----------解决:通过methods中定义方法 然后 v-html='myMethods(string)' ...

  2. webpack4搭建Vue开发环境笔记~~持续更新

    项目git地址 一.node知识 __dirname: 获取当前文件所在路径,等同于path.dirname(__filename) console.log(__dirname); // Prints ...

  3. Vue 项目优化,持续更新...

    一.减少打包的体积 通过vue-cli 初始化项目后,使用 npm run build 生成的JS文件往往会很大,加载时间过长导致页面长时间白屏,所以我们尽可能的使用一下方法来减少打包体积. 1.1 ...

  4. 【前端面试】Vue面试题总结(持续更新中)

    Vue面试题总结(持续更新中) 题目参考链接 https://blog.csdn.net/weixin_45257157/article/details/106215158 由于已经有很多前辈深造VU ...

  5. vue项目中使用bpmn-流程图json属性转xml(七篇更新完成)

    内容概述 本系列“vue项目中使用bpmn-xxxx”分为七篇,均为自己使用过程中用到的实例,手工原创,目前陆续更新中.主要包括vue项目中bpmn使用实例.应用技巧.基本知识点总结和需要注意事项,具 ...

  6. 前端学习笔记系列一:10整体移动vscode代码块、VSCode 使用 stylus,配置格式化设置、在vue项目中引入bootstrap

    1.整体移动vscode代码块 凭借操作的经验我们能够轻松地知道将代码整体往右移只需选中代码按Tab键即可.其实往左移也很简单: 选中之后按下 shift+Tab键 即可. 2.VSCode 使用 s ...

  7. BLE资料应用笔记 -- 持续更新

    BLE资料应用笔记 -- 持续更新 BLE 应用笔记 小书匠 简而言之,蓝牙无处不在,易于使用,低耗能和低使用成本.'让我们'更深入地探索这些方面吧. 蓝牙无处不在-,您可以在几乎每一台电话.笔记本电 ...

  8. vue项目中遇到的那些事。

    前言 有好几天没更新文章了.这段实际忙着做了一个vue的项目,从 19 天前开始,到今天刚好 20 天,独立完成. 做vue项目做这个项目一方面能为工作做一些准备,一方面也精进一下技术. 技术栈:vu ...

  9. Vue项目中GraphQL入门学习与应用

    1.GraphQL是什么,能干什么? 正如官网所说,GraphQL是一种用于API查询的语言.Facebook 的移动应用从 2012 年就开始使用 GraphQL.GraphQL 规范于 2015 ...

  10. vue项目中 axios 和Vue-axios的关系

    文章收集于:https://segmentfault.com/q/1010000010812113 在vue项目中,会经常看到如下代码:   今天看到有些项目是这样写的,就有点看不懂了.  ----解 ...

随机推荐

  1. Angular 依赖注入的错误 NullInjectorError, No provider for XXX

    一.在module的providers区域里,为pipe维护具体的实现类 二.如果不想改动module.ts,可选择直接在组件中注入

  2. js 防抖

    // 防抖 作用:防止重复触发事件 var count = 1; var container = document.getElementById('container'); function getU ...

  3. java学习:八大基本类型变量

    1.类 在java中用class来定义一个类,类是java程序的基本单位 类描述的是具有共性的一类事物,所以我们又可以把类称作为模板技术   如何理解共性: 具有相同的属性-->java变量 具 ...

  4. 华为R&W典型园区网络设计

    PS:本人正在学习HCIP中,想到一个典型的园区网络就自己用ENSP搭建了一个典型拓扑分享给大家一起学习 拓扑图如下: 要求已经写在拓扑结构下下方文本框中请自行查看! 配置如下(没有专门的命令插入我就 ...

  5. Ubuntu 20.04 :“a start job is running for hold until boot process finishes”

    A start job is running for Hold until boot process finishes up (xxx min xxx s/no limit) ubuntu20.04开 ...

  6. flutter 多种情况tabbar高度问题,普通使用和嵌套使用高度问题(Tab)。

    众所周知tabbar的高度是不可改变的.比如我们普通的写一个tabbar. 先上效果图: 代码: Scaffold( appBar: AppBar( title: Text("TabBarD ...

  7. ubuntu fastdds安装

    0,虚拟机安装: 推荐安装ubuntu 20.ubuntu 22与VMware不兼容,存在无法与主机之间复制粘贴文件的问题. 1.虚拟机镜像下载,下载tdesktop版本: 中科大站点:https:/ ...

  8. (0709) Linux-命令(scp,tar) zip

    (1) scp .bashrc root@192.168.1.6:vnc://cfy-hp-notebook-pc.local (2) tar -czvf a.tar.gz b            ...

  9. es的核心原理 (一)

    搜索引擎 搜索引擎的分类 全文搜索:谷歌.百度.必应:这种搜索过程到底搜索啥,不知道,有可能是个帖子,也有可能是个门户网站 垂直搜索:视频网站.各大电商:这种搜索内容是固定的,比如在懂车帝,你搜索的一 ...

  10. JAVA学习笔记-06

    多态:可以理解为事物存在的多种体现形态 1.多态的基本体现 父类的引用指向了自己的子类对象 父类的引用也可以接收自己的子类对象 2.多态的前提 必须是类与类之间有关系,要么继承,要么实现 通常还有一个 ...