一个关于Vue3响应式数据的问题 
                            
                                                    
                        
                    
                    
  
                    
                    问题描述
但是在下列程序中,当我点击按钮1的时候,非响应式的数据发生了改变。而当我点击按钮2的时候非响应式的数据没有发生改变。这到底是什么原因引起的呢?
问题代码展示
<template>
  <div>
 <h3>k:{{k}}-------------b:{{b}}</h3>
 <button @click="event1">按钮1</button>
 <button @click="event2">按钮2</button>
  </div>
</template>
<script setup lang="ts">
import {ref} from "vue";
// 非响应式的数据
let k = 1
// 响应式的数据
let b =ref(1)
function event1() {
  k+=1
  b.value+=1
  console.info(k, b)
}
function event2() {
  k+=1
  console.info(k)
}
</script>
                        
                        
                                            
          
          
          
                关于 LearnKu
              
                    
                    
                    
 
event1的ref变量变化,导致了视图更新,所以非响应式变量也发生了变化.第二个
ref变量没有变化,所以没有产生视图变化,非响应式变量也不会产生变化。如果你点击
event2之后,虽然当时视图的k没有变化,但是你再去点击event1时候,k是不是就是点击过event2后的值了呢?