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

网站营销单页面留言wordpress修改文件

网站营销单页面留言,wordpress修改文件,网站建设销售需要哪些,网站建设合同 代码应不应该给一、学习目标 1.组件的三大组成部分#xff08;结构/样式/逻辑#xff09; ​ scoped解决样式冲突/data是一个函数 2.组件通信 组件通信语法父传子子传父非父子通信#xff08;扩展#xff09; 4.进阶语法 v-model原理v-model应用于组件sync修饰符ref和$refs$nextTic…一、学习目标 1.组件的三大组成部分结构/样式/逻辑 ​ scoped解决样式冲突/data是一个函数 2.组件通信 组件通信语法父传子子传父非父子通信扩展 4.进阶语法 v-model原理v-model应用于组件sync修饰符ref和$refs$nextTick 二、scoped解决样式冲突 1.默认情况 写在组件中的样式会 全局生效 → 因此很容易造成多个组件之间的样式冲突问题。 全局样式: 默认组件中的样式会作用到全局任何一个组件中都会受到此样式的影响 局部样式: 可以给组件加上scoped 属性,可以让样式只作用于当前组件 2.代码演示 templatediv classbase-oneBaseOne/div /templatescript export default {} /scriptstyle scoped /* 1.style中的样式 默认是作用到全局的2.加上scoped可以让样式变成局部样式组件都应该有独立的样式推荐加scoped原理----------------------------------------------------- */ div{border: 3px solid blue;margin: 30px; } /style3.scoped原理 当前组件内标签都被添加data-v-hash值 的属性css选择器都被添加 [data-v-hash值] 的属性选择器 最终效果: 必须是当前组件的元素, 才会有这个自定义属性, 才会被这个样式作用到 三、data必须是一个函数 1、data为什么要写成函数 一个组件的 data 选项必须是一个函数。目的是为了保证每个组件实例维护独立的一份数据对象。每次创建新的组件实例都会新执行一次data 函数得到一个新对象。 2.代码演示 templatediv classbase-countbutton clickcount---/buttonspan{{ count }}/spanbutton clickcount/button/div /templatescript export default {data: function () {return {count: 100,}}, } /scriptstyle .base-count {margin: 20px; } /style四、组件通信 1.什么是组件通信 组件通信就是指组件与组件之间的数据传递 组件的数据是独立的无法直接访问其他组件的数据。想使用其他组件的数据就需要组件通信 2.组件之间如何通信 3.组件关系分类 父子关系 非父子关系 4.通信解决方案 5.父子通信流程 父组件通过 props 将数据传递给子组件子组件利用 $emit 通知父组件修改更新 6.父向子通信代码示例 父组件通过props将数据传递给子组件 父组件App.vue templatediv classapp styleborder: 3px solid #000; margin: 10px我是APP组件!-- 1.给组件标签添加属性方式 赋值 --Son :titlemyTitle/Son/div /templatescript import Son from ./components/Son.vue export default {name: App,data() {return {myTitle: 父组件通过props将数据传递给子组件,}},components: {Son,}, } /scriptstyle /style子组件Son.vue templatediv classson styleborder:3px solid #000;margin:10px!-- 3.直接使用props的值 --我是Son组件 {{title}}/div /templatescript export default {name: Son-Child,// 2.通过props来接受props:[title] } /scriptstyle/style父向子传值步骤 给子组件以添加属性的方式传值 子组件内部通过props接收 模板中直接使用 props接收的值 7.子向父通信代码示例 子组件利用 $emit 通知父组件进行修改更新 子向父传值步骤 $emit触发事件给父组件发送消息通知 父组件监听$emit触发的事件 提供处理函数在函数的性参中获取传过来的参数 五、什么是props 1.Props 定义 组件上 注册的一些 自定义属性 2.Props 作用 向子组件传递数据 3.特点 可以 传递 任意数量 的prop可以 传递 任意类型 的prop 六、props校验 1.思考 组件的props可以乱传吗 2.作用 为组件的 prop 指定验证要求不符合要求控制台就会有错误提示 → 帮助开发者快速发现错误 3.语法 类型校验非空校验默认值自定义校验 七、props校验完整写法 1.语法 props: {校验的属性名: {type: 类型, // Number String Boolean ...required: true, // 是否必填default: 默认值, // 默认值validator (value) {// 自定义校验逻辑return 是否通过校验}} },2.代码实例 script export default {// 完整写法类型、默认值、非空、自定义校验props: {w: {type: Number,//required: true,default: 0,validator(val) {// console.log(val)if (val 100 || val 0) {console.error(传入的范围必须是0-100之间)return false} else {return true}},},}, } /script3.注意 1.default和required一般不同时写因为当时必填项时肯定是有值的 2.default后面如果是简单类型的值可以直接写默认。如果是复杂类型的值则需要以函数的形式return一个默认值 八、propsdata、单向数据流 1.共同点 都可以给组件提供数据 2.区别 data 的数据是自己的 → 随便改prop 的数据是外部的 → 不能直接改要遵循 单向数据流 3.单向数据流 父级props 的数据更新会向下流动影响子组件。这个数据流动是单向的 4.口诀 谁的数据谁负责 九、非父子通信-event bus 事件总线 1.作用 非父子组件之间进行简易消息传递。(复杂场景→ Vuex) 2.步骤 创建一个都能访问的事件总线 空Vue实例 import Vue from vue const Bus new Vue() export default BusA组件接受方监听Bus的 $on事件 created () {Bus.$on(sendMsg, (msg) {this.msg msg}) }B组件发送方触发Bus的$emit事件 Bus.$emit(sendMsg, 这是一个消息)十、非父子通信-provideinject 1.作用 跨层级共享数据 2.场景 3.语法 父组件 provide提供数据 export default {provide () {return {// 普通类型【非响应式】color: this.color, // 复杂类型【响应式】userInfo: this.userInfo, }} }2.子/孙组件 inject获取数据 export default {inject: [color,userInfo],created () {console.log(this.color, this.userInfo)} }4.注意 provide提供的简单类型的数据不是响应式的复杂类型数据是响应式。推荐提供复杂类型数据子/孙组件通过inject获取的数据不能在自身组件内修改 十一、v-model原理 1.原理 v-model本质上是一个语法糖。例如应用在输入框上就是value属性 和 input事件 的合写 templatediv idapp input v-modelmsg typetextinput :valuemsg inputmsg $event.target.value typetext/div /template 2.作用 提供数据的双向绑定 数据变视图跟着变 :value视图变数据跟着变 input 3.注意 $event 用于在模板中获取事件的形参 4.v-model使用在其他表单元素上的原理 不同的表单元素 v-model在底层的处理机制是不一样的。比如给checkbox使用v-model底层处理的是 checked属性和change事件。 十二、.sync修饰符 1.作用 可以实现 子组件 与 父组件数据 的 双向绑定简化代码 简单理解子组件可以修改父组件传过来的props值 2.本质 .sync修饰符 就是 :属性名 和 update:属性名 合写 4.语法 父组件 //.sync写法 BaseDialog :visible.syncisShow / -------------------------------------- //完整写法 BaseDialog :visibleisShow update:visibleisShow $event /子组件 props: {visible: Boolean },this.$emit(update:visible, false)十三、ref和$refs 1.作用 利用ref 和$refs可以用于 获取dom元素 或 组件实例 2.特点 查找范围 → 当前组件内(更精确稳定) 3.语法 1.给要获取的盒子添加ref属性 div refchartRef我是渲染图表的容器/div2.获取时通过 $refs获取 this.$refs.chartRef 获取 mounted () {console.log(this.$refs.chartRef) }十四、异步更新 $nextTick 1.需求 编辑标题, 编辑框自动聚焦 点击编辑显示编辑框让编辑框立刻获取焦点 2.代码实现 templatediv classappdiv v-ifisShowEditinput typetext v-modeleditValue refinp /button确认/button/divdiv v-elsespan{{ title }}/spanbutton clickeditFn编辑/button/div/div /templatescript export default {data() {return {title: 大标题,isShowEdit: false,editValue: ,}},methods: {editFn() {// 显示输入框this.isShowEdit true // 获取焦点this.$refs.inp.focus() } }, } /script 3.问题 “显示之后”立刻获取焦点是不能成功的 原因Vue 是异步更新DOM (提升性能) 4.解决方案 $nextTick等 DOM更新后,才会触发执行此方法里的函数体 语法: this.$nextTick(函数体) this.$nextTick(() {this.$refs.inp.focus() })注意$nextTick 内的函数体 一定是箭头函数这样才能让函数内部的this指向Vue实例
http://www.dnsts.com.cn/news/19125.html

相关文章:

  • 成都建设网站公司免费的舆情网站不用下载直接打开
  • 网站建设是什么意思 打不开wordpress 下载页插件下载
  • 网站备案有什么坏处腰椎间盘突出压迫神经腿疼怎么治疗
  • 嘉兴网站制作多少钱网站建设管理工作的意见
  • 做网站群沈阳妇科体检去哪里好
  • html5 服装网站移动手机号码网站
  • 大连做网站绍兴厂商网站建设调查问卷
  • 企业网站多大空间做网站有哪些语言
  • 网站支持ipv6怎么做光明网站建设
  • c 做网站起什么作用个人备案网站会影响吗
  • 销售型网站惠州自适应网站建设
  • 开锁公司网站建设wordpress网站的搭建
  • iis7 网站 目录国家重大建设项目库网站
  • 网站seo优化免网页设计是什么职业
  • 防水网站的外链如何找ps网站背景图片怎么做
  • 如何设计企业网站安徽网站建设合肥网站建设
  • 北京网站建设公司如何选网站建设能赚钱吗
  • 招标公司网站建设方案优秀网页设计作品分析ppt
  • 收费用的网站怎么做网站建设的基本流程可分为
  • seo查询爱站网主流网站
  • 网站基本配置wordpress安装界面默认英文
  • 越秀区建网站的公司广州网站建设哪里有
  • 动态门户网站建设价格上海好的网站建设公司
  • 宁波网站快速优化手机网站免费
  • 怎样将qq空间建设为个人网站石家庄外贸建站公司
  • dedecms 广告管理 js 网站变慢网站快速收录技术
  • 重庆外贸网站建设公司杭州哪家公司可以做网站
  • 大型网站设计网站水利建设与管理司网站
  • 东莞品牌网站制作公司网站服务器搬家
  • 有没有转门做乐器演奏的网站建设网站做什么赚钱