技术标签: vue 数组变动渲染 this.$set Vue.set
关于为什么数据变动不重新渲染, 官网已经介绍了, 这里就不再多说:
下面主要记录一下如何利用Vue.set方法手动的触发Vue的渲染:
具体的操作代码如下:
组件基本代码:
<style lang="sass">
</style>
<template>
<div>
<div>
<div>
</div>
</div>
</div>
</template>
<script>
export default {
data(){
return {
}
},
methods: {
ceshi(){
}
}
}
</script>
1.数组的增加,删除(数组的push等方法排除)
</style>
<template>
<div>
<div>
<div>
<div v-for="item in items">
<span>{
{ item }}</span>
</div>
<button @click="ceshi">anniu</button>
</div>
</div>
</div>
</template>
<script>
export default {
data(){
return {
items: [11,22],
obj: { a: 'aa', b: 'bb' }
}
},
methods: {
ceshi(){
this.items[2] = 33; // 这样的写法数据是无法重新渲染的
}
}
}
</script>
点击按钮操作ceshi事件前后,没发生变化
解决方法:
具体实现如下:
methods: {
ceshi(){
this.$set(this.items, 2, 33)
}
},
同理,如果items: [{a: ‘11’}] –> items: [{a: ‘11’, b: ‘22’}]
<div v-for="item in items">
<span v-for="(i, j) in item">{
{ i }}--{
{ j }}</span>
</div>
this.items[0] = Object.assign({}, this.items[0], { b: '22' });
this.$set(this.items, 0, this.items[0]);
2.给对象增加新属性(同理)
<template>
<div>
<div v-for="item in obj">
<span>{
{ item }}</span>
</div>
</div>
</template>
data(){
return {
obj: { a: 'aa', b: 'bb' }
}
}
methods: {
ceshi(){
this.obj['c'] = '000'; // 不起作用
this.$set(this.obj, 'c', '000'); //起作用
}
},
33事实证明我得每天写csdn,因为少写了25号的,就少报了一天,245块啊啊啊啊啊啊啊啊啊够我4天的饭钱了,又不敢重新跟老大讲,哭泣。不过想想人生找到的第一份实习,竟然钱给的还好,不用打卡能偷偷溜出去,迟到也没被说过(每次都是意外迟到,很不好我知道),晚上很早出去吃饭也没事,有三周左右没写代码只是在看,公司作为作为做算法的不算小有名气,算个中厂?环境特别好(桌子宽靠窗户亮),mentor虽然知道我比较菜平时也很忙,但是跟我讲东西的时候非常耐心(我很笨,听不懂人话的那种),感觉增删改查熟悉了很多,组件啊
fromhttp://blog.csdn.net/newchenxf/article/details/53169016手动安装gradle时, 即sudo apt-get install gradle然后,要使用gradle,输入 gradle -version,结果,出现了一下错误:[email protected]:~$ gradle --version
介绍介绍今天我们学习如何通过Python操作MySQL数据库。在Python2.7下使用的是pymysql这个软件包,跟着福哥来操作吧。安装安装pymysql直接使用pip安装即可pip insall pymysql授权MySQL数据库服务器默认只能在安装了数据库服务器的本机操作,也就是在TFLinux上操作,但是我们的python是安装在TFWindows上的啊!所以,我们要授权任何电脑都可以操...
在iOS开发过程会经常使用到提示框(UIAlertView),iOS 8之后UIAlertView便被UIAlertController所代替,下面我们就对两者进行相应的封装方便使用,这边把UIAlertView的代理封装成block回调方便使用,废话不多说上代码才是硬道理。
一、漏洞扫描原理 扫描器通过发送对应的验证数据到目标具体服务进行验证。当收到目标返回的响应与存在的漏洞响应一致时,表明有漏洞。二、漏洞扫描工具 1、漏洞扫描工具--nmap 使用nmap也可以进行漏洞扫描: nmap --script vuln 目标IP地址 2、漏洞扫描工具--Nessus三、漏洞利用--metasploit 1、利用Metasploit对扫描到的漏洞加以利用。 2、步骤: 1、终端输入...
网上制作pe的工具很多,像大白菜、老毛桃、u深度等等,但这些pe都有一个缺点,装好的系统多多少少都会给安装一些没必要的软件,此时还得一个个去删除。今天说的这款工具是一款纯净安装系统的工具,不会在安装好后自动装各种没用的软件。制作步骤如下:第一步,先下载。下载方法:1.输入下载地址:http://www.wepe.com.cn/2.点击下载,里面有各种版本,按照自己需求下载。3.点“我已捐赠”。凭自己意愿捐赠,没有捐赠也可以下载:4.进入以下微云下载界面,有不同版本,按照自己需求下载:第
http://bmzclub.cn/challenges#2020sdnisc-%E6%8D%9F%E5%9D%8F%E7%9A%84%E6%B5%81%E9%87%8F%E5%8C%851.pcapng无法使用wireshark打开可能破坏了pcapng的文件结构,但是应该不会破坏数据内容,尝试使用foremost看看能不能从这个数据包中分离出什么东西得到一个zip压缩包,解压得到key.txtZmxhZ3tzZG5pc2NfbmV0X3NRMlgzUTl4fQ==PS C:\User
如果上传的时候,是同步上传的,不会出现问题。如果是异步上传的,如果你传入的异步方法是 MultipartFile file,就会包下面的错java.io.FileNotFoundException: D:\usr\local\tomcat\work\Tomcat\localhost\upload_46ba607a_d50c_4618_9b66_234953a0ba1f_00000002.tmp...
在讲这个函数之前。最好先了解欧拉函数。我们用 \ 记为整除。 记得小学的时候整除和整除以的概念么?别混淆。 2整除4 记作 2\4。欧拉函数用来表示。那么根据法里级数的展开(这个感觉和ACM关系不大就先不介绍了。大概讲的就是构造所有最简分数的一种树。而法里级数n定义分母<=n的最简分数。)比如对于分母为12.化简后:分别为:1/12 1/6 1/...
Comparison of different SQL implementationsThe goal of this page — which is a work in progress — is to gather information relevant for people who are porting SQL from one product to another and/...
串口就是URT。UART:universal asynchronous receiver and transmitter通用异步收发器;USART:universal synchronous asynchronous receiver and transmitter通用同步异步收发器。串口的通信协议一般是RS232。主要用在工业控制、路由器调试、串口通信。参考文章参考文章...