当前位置: 首页 > news >正文

宜春网站建设联系方式重庆中环建设有限公司网站

宜春网站建设联系方式,重庆中环建设有限公司网站,英文网站建设优化,网易企业邮箱密码忘记了怎么找回密码单文件组件(1)script setupscript setup 是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖。当同时使用 SFC 与组合式 API 时该语法是默认推荐启用该语法#xff0c;需要在 script 代码块上添加 setup attribute, 里面的代码会被编译成组件 s…单文件组件(1)script setupscript setup 是在单文件组件 (SFC) 中使用组合式 API 的编译时语法糖。当同时使用 SFC 与组合式 API 时该语法是默认推荐启用该语法需要在 script 代码块上添加 setup attribute,   里面的代码会被编译成组件 setup() 函数的内容普通的 script 只在组件被首次引入时执行一次script setup 中的代码会在每次组件实例被创建的时候执行 script setup需要写在组件中的最前边(2)入口setup() 钩子是在组件中使用组合式 API 的入口写法  setup(){     }注意在setup中避免使用this(3)执行时机执行时机组件被创建之前执行使用setup钩子替代beforeCreate和created函数。所有vue3中没有beforeCreate和created的钩子函数2.使用(1)顶层的绑定会被暴露给模板当使用 script setup 时任何在 script setup 声明的顶层的绑定 (包括变量函数声明以及 import 导入的内容) 都能在模板中直接使用import 导入的内容也会以同样的方式暴露。可以在模板表达式中直接使用导入的函数而不需要通过 methods 选项来暴露它script setupimport ToDoHeader from ./SetupToDoHeader.vue// 使用任script setup 其中声明的顶层的绑定 (包括变量函数声明以及 import 导入的内容) 都能在模板中直接使用, 不需要再使用components, methods, data()等注册 /script templateToDoHeader addaddList deleteAlldelAll /ToDoHeader /template (2)props用法// 用于接收父组件传的的值 props的用法// 方式1// const props defineProps([todoList])// 方式2const props defineProps({todoList:{type: Array, require: true,},title:{type: String,default: 待办事项},flag: {type: Boolean,defalut: false}})(3)响应式ref()响应式 ref()接受一个内部值(number|string)返回一个响应式的、可更改的 ref 对象此对象只有一个指向其内部值的属性 .value //使用前引入import { ref,reactive } from vue // 此处声明的是 非响应式的const msg Hello!// 使用ref ,使得变量成为 响应式的, 使用前先引入 数组在删除时, 有问题, 故改为对象的形式进行删除const todoVal ref()// 避免使用this 常量修改值时, 需要通过 .value来修改, 在显示时不需要.value (4)reactive响应式代理 const obj reactive({ todoList : [] })// reactive(引用类型) 响应式代理// const obj reactive({})基于响应式对象上的一个属性创建一个对应的 ref。这样创建的 ref 与其源属性保持同步改变源属性的值将更新 ref 的值反之亦然toRef()const state reactive({foo: 1,bar: 2 }) const fooRef toRef(state, foo) // 更改该 ref 会更新源属性 fooRef.value console.log(state.foo) // 2 // 更改源属性也会更新该 ref state.foo console.log(fooRef.value) // 3请注意这不同于const fooRef ref(state.foo)上面这个 ref 不会和 state.foo 保持同步因为这个 ref() 接收到的是一个纯数值toRefs() 将一个响应式对象转换为一个普通对象这个普通对象的每个属性都是指向源对象相应属性的 ref。每个单独的 ref 都是使用 toRef() 创建的。const state reactive({foo: 1,bar: 2 })const stateAsRefs toRefs(state) /* stateAsRefs 的类型{foo: Refnumber,bar: Refnumber } */ // 这个 ref 和源属性已经“链接上了” state.foo console.log(stateAsRefs.foo.value) // 2 stateAsRefs.foo.value console.log(state.foo) // 3 //当从组合式函数中返回响应式对象时toRefs 相当有用。使用它消费者组件可以解构/展开返回的对象而不会失去响应性 function useFeatureX() {const state reactive({foo: 1,bar: 2})// ...基于状态的操作逻辑// 在返回时都转为 refreturn toRefs(state) } // 可以解构而不会失去响应性 const { foo, bar } useFeatureX()(5)computed()//创建一个可写的计算属性 ref const count ref(1) const plusOne computed({get: () count.value 1,set: (val) {count.value val - 1} })(6)watch()/watchEffect()watch() 侦听一个或多个响应式数据源并在数据源变化时调用所给的回调函数    import { ref , watch, watchEffect} from vueconst before ref(0)const after ref(0)// watch() 默认是懒侦听的(深度侦听)即仅在侦听源发生变化时才执行回调函数watch(props.todoList, (newList, preList){after.value newList.filter(itemitem.done).lengthbefore.value newList.length - after.value})// 立即执行 一个函数同时响应式地追踪其依赖并在依赖更改时重新执行// watchEffect(()console.log(before.value)) // 停止侦听器// const stop watchEffect((){})// stop()(7)provide和inject import { provide } from vue // 向后代传参 provide(键,值)// 提供静态值 provide(msg,hahahaah)// 提供响应式的值const count ref(0)provide(count,count) // 接收发送方传递的值const message inject(msg)(8)向父组件传值 //子组件 // 向父组件传值 script setup// 向父组件传值const emit defineEmits([add])const addList (){emit(add, todoVal.value) //传值时需要使用 .valuetodoVal.value }const delAll () {emit(deleteAll)}/scripttemplateheaderspan classsubmit clickaddList提交/spanspan classclear clickdelAll清空/span/header /template//父组件 script setup// 避免使用this 常量修改值时, 需要通过 .value来修改, 在显示时不需要.valueconst addList (todoVal) {if (todoVal ) return alert(输入内容不能为空!!!) obj.todoList.unshift({// id : ${new Date().getTime()},todoName: todoVal,done: false});}// 删除单个const delOne index {obj.todoList.splice(index,1)}//删除全部const delAll (){// 从索引为0的开始全删掉 如果使用直接让数组[]的方式,只是清空了数组, 地址没有变, 无法触发watch监听 使用todoList.value.splice(0) 或 todoList.value.length0的方式清空 todoList如果是数组需要 .value, 对象不需要写obj.todoList.splice(0)} /script templateToDoHeader addaddList deleteAlldelAll /ToDoHeader /template
http://www.dnsts.com.cn/news/131846.html

相关文章:

  • 网站管理系统后台不能发布文章了自己做网站怎么选架构
  • 没有网站备案可以做诚信认证嘛网站运行维护
  • 网站国际互联网备案号WordPress考勤模板
  • 南京建网站中国室内设计师联盟官网
  • 陕西省住房城乡建设部门户网站手机上写WordPress博文
  • 网站换空间会影响排名吗2022年小学生新闻摘抄十条
  • 摄影作品网站知乎女生学软件工程很难吗
  • 在dw上做网站首页导航栏126企业邮箱注册
  • 保山市城市建设网站青岛网站建设seo
  • 查网站权重汕头网站模板价格
  • 怎么用wordpress建立本地网站巴中住房建设部网站
  • 南昌模板建站定制网站网站建设资讯平台
  • 简述网站建设与维护微信公众号手机上传wordpress
  • 网站开发英文怎么说网站建设报告怎么写
  • 嘉兴公司网站制作做外贸需要建英文网站吗
  • 制作外贸型网站抖音宣传推广方案
  • 部署wordpress站点分享型网站
  • 新手做淘宝哪个网站比较好生产企业网站有哪些
  • 哪个女装网站做的好做网站如何不被忽悠
  • 网站开发中如何设计验证码设计公司英文
  • 深圳php网站开发微网站 开发
  • 手机应用下载网站源码wordpress评论者头像
  • 福建省建设监理网官方网站com域名免费
  • 网站seo优化有哪些方面3d做网站
  • 什么是网站栏目标题做外贸seo优化的公司
  • 睢宁县凌城做网站的搜狗seo刷排名软件
  • 网站设计主题有哪些国外做行程的网站
  • 做车贷的网站去大连需要下载什么软件
  • 工业和信息化部网站备案o2o平台有哪些可以入驻
  • 做网站运营还是翻译邯郸旅游景点