vue组合式开发(不使用this)
模板式写法:
vscod(调出控制终端快捷键ctrl+shift+~)
1.在文件夹中创建xx.vue文件,文件包括三部分
<script setup></script> 对应js <template></template> 只能有一份 ,另外两个任意 对应html <style scoped></style> 对应 css
2.填充内容
<script setup> import { onMounted, ref } from "vue"; //引用vue的函数 /* 组合式开发 */ //代表count2初始值为0 const count2 = ref(0); //ref响应式赋值,模型改变视图会立即渲染,修改多次渲染多次,通俗就是,点击数字会变化 const demo2 = () => { count2.value++; 响应式 要用.value进行操作 }; let count3 = 0; //不是响应是赋值,第一次会渲染视图,但是后面对数据的修改视图不会渲染 ,点击数字无变化 const demo3 = () => { count3++; }; onMounted(() => { console.log("页面挂在完成。。。"); }); </script> <template> <h1>组合式开发</h1> <button @click="demo2">click:{{ count2 }}</button> {{ count2 }} vue中的插值表达式 <button @click="demo3">click:{{ count3 }}</button> </template> <style scoped></style>
3.挂载在APP.vue中
<script setup> import Dev1XXS(文件名) from "./Pages/Dev1XXS.vue(路径)"; 导入导入其他组件,当前组件能够使用Dev1XXS组件的功能和 UI </script> // 模板只能有一份 <template> <Dev1XXS></Dev1XXS> //写模板 定义组件的 UI 结构 将Dev1XXS组件渲染到当前组件的位置;标签中间能否插入内容要根据属性决定 </template> <style scoped></style>
ref使用value的时机
| 变量 | 数据类型 | 存储内容 | 典型应用场景 | 访问方式(JS / 模板) | 
| 
 | 对象 | 表单字段 | 表单数据绑定、筛选条件 | 
 / | 
| 
 | 数值 | 单个 ID 值 | 记录行 ID、当前选中项 | 
 / | 
| 
 | 数组 | 列表数据 | 列表渲染、数据展示 | 
 / | 
| 场景 | JavaScript 代码(需用 ) | 模板代码(无需 ) | 
| 访问对象属性 | 
 | 
 | 
| 访问基本类型 | 
 | 
 | 
| 访问数组 | 
 | 
 | 
| 修改对象属性 | 
 | 
 | 
| 修改基本类型 | 
 | 
 | 
- ref的作用:将数据包装成响应式对象,通过- .value存储实际值。
- JS 中必须用.value:因为需要显式操作被包装的数据,让 Vue 追踪变化。
- 模板中无需.value:框架自动解包.value,简化语法。
举个生活类比:ref就像一个装着糖果(数据)的盒子(.value)。
- 在 JS 中,你需要打开盒子(.value)才能拿到糖果;
- 在模板中,盒子是透明的,你可以直接看到并拿到糖果(无需.value)。
 
                            ![微信小程序报错[ app.json 文件内容错误] app.json: app.json 未找到,一招解决](https://ucc.alicdn.com/pic/developer-ecology/9ffdf6e82231409795cf3c6fc0d1aa78.png?x-oss-process=image/format,webp/resize,h_160,m_lfit) 
                