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

郑州做网站第一人个人定制网站

郑州做网站第一人,个人定制网站,wordpress用户名忘记,个人网站名可以和别人一样吗Vue3 create-vue搭建Vue3项目 注意要使用nodejs16.0版本以上#xff0c;windows升级node可以西安使用where node查看本地node位置#xff0c;然后到官网下载msi文件#xff0c;在本地路径下安装即可 安装完可以使用node -v检查版本信息 项目目录和关键文件 组合式API - s…Vue3 create-vue搭建Vue3项目 注意要使用nodejs16.0版本以上windows升级node可以西安使用where node查看本地node位置然后到官网下载msi文件在本地路径下安装即可 安装完可以使用node -v检查版本信息 项目目录和关键文件 组合式API - setup选项 script // setup函数 // 1. 执行时机比beforeCreate还要早 // 2. setup函数中获取不到thisthis是undefined export default{setup(){// console.log(setup函数,this);},beforeCreate(){console.log(beforeCreate函数);} } /scripttemplatediv学习Vue3/div /templatescript // setup函数 // 1. 执行时机比beforeCreate还要早 // 2. setup函数中获取不到thisthis是undefined // 3. 数据和函数需要在setup最后return才能在模板中应用 export default{setup(){// console.log(setup函数,this);// 数据const message hello Vue3// 函数const logMessage () {console.log(message)}return {message,logMessage}},beforeCreate(){console.log(beforeCreate函数);} } /scripttemplatediv{{ message }}/divbutton clicklogMessage按钮/button /template!-- script // setup函数 // 1. 执行时机比beforeCreate还要早 // 2. setup函数中获取不到thisthis是undefined // 3. 数据和函数需要在setup最后return才能在模板中应用 export default{setup(){// console.log(setup函数,this);// 数据const message hello Vue3// 函数const logMessage () {console.log(message)}return {message,logMessage}},beforeCreate(){console.log(beforeCreate函数);} } /script --script setup const message hello Vue3 const logMessage(){console.log(message) } /scripttemplatediv{{ message }}/divbutton clicklogMessage按钮/button /template组合式API - reactive和ref函数 reactive() script setup // reactive语法接受对象类型数据的参数传入并返回一个响应式的对象 import { reactive } from vue; const state reactive({count:100 }) const setCount(){state.count } /scripttemplatedivdiv{{ state.count }}/divbutton clicksetCount1/button/div /templateref() script setup // reactive语法接受对象类型数据的参数传入并返回一个响应式的对象 // import { reactive } from vue; // const state reactive({ // count:100 // }) // const setCount(){ // state.count // }// 如果是简单类型怎么办 // 脚本中访问数据需要通过value // 在template中.value不需要加 import { ref } from vue const count ref(0) const setCount(){count.value } /scripttemplatedivdiv{{ count }}/divbutton clicksetCount1/button/div /template日后编码统一使用ref() 组合式API - computed script setup // const 计算属性 computed(() {return计算返回的结果})import { computed, ref } from vue; // 声明数据 const list ref([1, 2, 3, 4, 5, 6, 7, 8]);// 基于list派生一个计算属性从list中过滤出大于2 const computedList computed(() {return list.value.filter((item) item 2); });// 定义一个修改数组的方法 const addFn(){list.value.push(666) } /scripttemplatediv原始数据{{ list }}/divdiv计算后的数据{{ computedList }}/divbutton clickaddFn typebutton修改/button /template 组合式API - watch 基础使用 - 侦听单个数据 基础使用 - 侦听多个数据 script setup import {ref,watch} from vue const count ref(0) const nickname ref(张三)const changeCount(){count.value } const changeName(){nickname.value 里四 }// 1.监视单个数据的变化 // watch(ref对象,(newValue,oldValue){...}) watch(count,(newValue,oldValue){console.log(newValue,oldValue) }) // 2.监视多个数据的变化 // watch([ref对象1,ref对象2],(newArr,oldArr){...}) watch([count,nickname],(newArr,oldArr){console.log(newArr,oldArr) }) /scripttemplatediv{{ count }}/divbutton clickchangeCount改数字/buttondiv{{ nickname }}/divbutton clickchangeName改昵称/button /templateimmediate deep script setup import {ref,watch} from vue const count ref(0) const nickname ref(张三)const changeCount(){count.value } const changeName(){nickname.value 里四 }// 1.监视单个数据的变化 // watch(ref对象,(newValue,oldValue){...}) // watch(count,(newValue,oldValue){ // console.log(newValue,oldValue) // })// 2.监视多个数据的变化 // watch([ref对象1,ref对象2],(newArr,oldArr){...}) // watch([count,nickname],(newArr,oldArr){ // console.log(newArr,oldArr) // })// 3.immediate立即执行 // watch(count,(newValue,oldValue){ // console.log(newValue,oldValue) // },{ // immediate:true // })// 4.deep深度监视:默认watch进行的是浅层监视 const useInfo ref({name:张三,age:18 }) const setUserInfo(){// 修改了useInfo.value 修改了对象的地址,才能监视到// useInfo.value {name : ls,age:50}useInfo.value.age } watch(useInfo,(newValue){console.log(newValue) },{deep:true }) /scripttemplatediv{{ count }}/divbutton clickchangeCount改数字/buttondiv{{ nickname }}/divbutton clickchangeName改昵称/buttondiv{{ useInfo }}/divbutton clicksetUserInfo修改userInfo/button /template精确侦听对象的某个属性 script setup import {ref,watch} from vue const count ref(0) const nickname ref(张三)const changeCount(){count.value } const changeName(){nickname.value 里四 }// 1.监视单个数据的变化 // watch(ref对象,(newValue,oldValue){...}) // watch(count,(newValue,oldValue){ // console.log(newValue,oldValue) // })// 2.监视多个数据的变化 // watch([ref对象1,ref对象2],(newArr,oldArr){...}) // watch([count,nickname],(newArr,oldArr){ // console.log(newArr,oldArr) // })// 3.immediate立即执行 // watch(count,(newValue,oldValue){ // console.log(newValue,oldValue) // },{ // immediate:true // })// 4.deep深度监视:默认watch进行的是浅层监视 const useInfo ref({name:张三,age:18 }) const setUserInfo(){// 修改了useInfo.value 修改了对象的地址,才能监视到// useInfo.value {name : ls,age:50}useInfo.value.age }// 4. deep深度监视 // watch(useInfo,(newValue){ // console.log(newValue) // },{ // deep:true // })// 5. 对于对象中的属性,进行监视 watch(()useInfo.value.age,(newValue,oldValue){console.log(newValue,oldValue) }) /scripttemplatediv{{ count }}/divbutton clickchangeCount改数字/buttondiv{{ nickname }}/divbutton clickchangeName改昵称/buttondiv{{ useInfo }}/divbutton clicksetUserInfo修改userInfo/button /template组合式API - 生命周期函数 生命周期函数基本使用 执行多次 script setupimport { onMounted } from vue; // beforeCreated 和 created 的相关代码放在 setup 中执行 const getList () {setTimeout((){console.log(发送请求,获取数据)},2000) }// 已进入页面的请求 getList()// 如果有写代码需要在mounted生命周期中执行 onMounted((){console.log(mounted生命周期函数) }) // 可调用多次,不会冲突,按照顺序依次执行 onMounted((){console.log(mounted生命周期函数1) }) /scripttemplatediv/div /template 组合式API - 父子通信 组合式API下的父传子 script setup // 注意:由于写了setup,所以无法直接配置props // 此处要借助于编译器宏函数接收 const props defineProps({car:String,money:Number }) console.log(props.car) console.log(props.money) /scripttemplatediv classson我是子组件 - {{ car }}/div /templatestyle scoped .son {border: 1px solid #000;padding: 30px; }/stylescript setup import SonCom from /components/son-com.vue import {ref} from vue // 局部组件导入进来就能用 const money ref(100) const getMoney () {money.value10 } /scripttemplatedivh1父组件 - {{ money }}button clickgetMoney挣钱/button/h1!-- 给子组件,以添加属性的方式传值 --SonCom car宝马车 :moneymoney/SonCom/div /template 组合式API下的子传父 组合式API - 模版引用 如何使用以获取dom为例 组件同理 defineExpose() 组合式API - provide和inject 跨层传递普通数据 跨层传递响应式数据 跨层传递方法 script setup import CenterCom from /components/center-com.vue; import { provide, ref } from vue;// 1.跨层传递普通数据 provide(theme-color, pink);// 2.跨层传递响应式数据 const count ref(100); provide(count, count);setTimeout(() {count.value 500; }, 2000);// 3.跨层级传递函数,给子孙后代传递可以修改数据的方法 provide(changeCount, (newCount) {count.value newCount; }); /scripttemplatedivh1顶层组件/h1CenterCom/CenterCom/div /template script setup import BottomCom from ./bottom-com.vue/scripttemplatedivh2中间组件/h2BottomCom/BottomCom/div /template script setup import {inject} from vue const themeColor inject(theme-color) const count inject(count) const changeCount inject(changeCount) const clickFn(){changeCount(1000) } /scripttemplatedivh3底层组件 - {{ themeColor }} - {{ count }}/h3button clickclickFn更新count/button/div /template Vue3.3新特性-defineOptions Vue3.3新特性-defineModel
http://www.hkea.cn/news/14529791/

相关文章:

  • 二七网站建设做网站需要先搞目录么
  • 网站排名优化软件哪家好广西人才网官方网站
  • 没有网站可以做cpa江苏科技大学新校区建设网站
  • 织梦网站所有图片不显示网站开发软件要求
  • 清河网站建设设计google seo 优化
  • godaddy 建网站用html做企业门户网站
  • 河南公司网站制作咨询搭建自己的邮件服务器
  • 杭州企业seo网站优化河北省正定县城乡建设网站
  • 广东省建设监理协会网站 首页免费建站自助建站网站建设教程网站建设教程
  • 网站后台主流网站开发语言wordpress 防sql注入
  • 建设网站的规划书移动公司需要网络工程专业
  • 沈阳网站设计做网站用国内还是国外的vps
  • 网站子页面怎么做可以做围棋题的网站
  • 建站是什么意思iis做的网站手机怎么访问
  • 国际网站排名查询中国企业网络营销实例
  • 河南省建设厅网站职称网中国十大网络安全公司排名
  • 网站编程脚本语言品质好的英文
  • 我做的网站怎样推广的湖南网站建设
  • 怎样建设一个卡盟网站福建建设科技人才网站
  • 网站维护包括哪些网站开发课程的心得
  • 江门制作网站公司怎么做网站下单
  • 河南建设部网站创建网站需要准备哪些资料
  • 查建设公司资质的网站做网站的主要收入
  • 国内免费可商用图片素材网站创建网站的工具
  • XART视频库WordPress优化网站界面的工具
  • wordpress 标签 热门南宁seo排名收费
  • 帝国cms做网站怎样维护为什么做网站ppt
  • 微网站免费制作网络域名的网站
  • 生物科技公司网站建设wordpress 虚拟数据
  • 沈阳做平板网站无锡营销型网站