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

太原网站制作哪儿好薇wordpress固定链接设置后进入不

太原网站制作哪儿好薇,wordpress固定链接设置后进入不,网络推广策略,学校网站建设合同文章目录 版权声明组件的三大组成部分scoped解决样式冲突scoped原理2.代码演示 组件data函数说明演示 组件通信组件关系分类通信解决方案父子通信流程子向父通信代 props详解props校验propsdata、单向数据流 小黑记事本#xff08;组件版#xff09;基础组件结构需求和实… 文章目录 版权声明组件的三大组成部分scoped解决样式冲突scoped原理2.代码演示 组件data函数说明演示 组件通信组件关系分类通信解决方案父子通信流程子向父通信代 props详解props校验propsdata、单向数据流 小黑记事本组件版基础组件结构需求和实现思路完整代码App.vueTodoHeader.vueTodoBody.vueTodoFoot.vue 版权声明 本博客的内容基于我个人学习黑马程序员课程的学习笔记整理而成。我特此声明所有版权属于黑马程序员或相关权利人所有。本博客的目的仅为个人学习和交流之用并非商业用途。我在整理学习笔记的过程中尽力确保准确性但无法保证内容的完整性和时效性。本博客的内容可能会随着时间的推移而过时或需要更新。若您是黑马程序员或相关权利人如有任何侵犯版权的地方请您及时联系我我将立即予以删除或进行必要的修改。对于其他读者请在阅读本博客内容时保持遵守相关法律法规和道德准则谨慎参考并自行承担因此产生的风险和责任。本博客中的部分观点和意见仅代表我个人不代表黑马程序员的立场。 组件的三大组成部分 结构、样式、逻辑 scoped解决样式冲突 默认情况写在组件中的样式会 全局生效很容易造成多个组件之间的样式冲突问题。 全局样式: 默认组件中的样式会作用到全局任何一个组件中都会受到此样式的影响局部样式: 可以给组件加上scoped 属性,可以让样式只作用于当前组件 scoped原理 当前组件内标签都被添加data-v-hash值 的属性css选择器都被添加 [data-v-hash值] 的属性选择器 最终效果: 必须是当前组件的元素, 才会有这个自定义属性, 才会被这个样式作用到 2.代码演示 BaseOne.vue templatediv classbase-oneBaseOne/div /templatescript export default {} /scriptstyle scoped /* 1.style中的样式 默认是作用到全局的2.加上scoped可以让样式变成局部样式组件都应该有独立的样式推荐加scoped原理-----------------------------------------------------scoped原理1.给当前组件模板的所有元素都会添加上一个自定义属性data-v-hash值data-v-5f6a9d56 用于区分开不通的组件2.css选择器后面被自动处理添加上了属性选择器div[data-v-5f6a9d56] */ div{border: 3px solid blue;margin: 30px; } /styleBaseTwo.vue templatediv classbase-oneBaseTwo/div /templatescript export default {} /scriptstyle scopeddiv{border: 3px solid red;margin: 30px;} /styleApp.vue templatediv idappBaseOne/BaseOneBaseTwo/BaseTwo/div /templatescript import BaseOne from ./components/BaseOne import BaseTwo from ./components/BaseTwo export default {name: App,components: {BaseOne,BaseTwo} } /script组件data函数 说明 在之前的基础阶段的练习中data使用的是对象的写法这是因为方便基础练习全局只有唯一一个data对象data对象写法 Vue.component(my-component, {data: {message: Hello, Vue!},template: div{{ message }}/div })data函数写法 Vue.component(my-component, {data: function () {return {count: 0}},template: div{{ count }}/div })在Vue.js中一个组件的data选项必须是一个函数而不是一个对象。为了确保每个组件实例都能维护独立的数据对象避免数据共享和潜在的问题。每次创建一个新的组件实例时Vue会调用这个函数来返回一个新的数据对象以保证实例之间的数据隔离。 Vue.component(my-component, {data() {return {message: Hello, Vue!}},template: lt;divgt;{{ message }}lt;/divgt; })演示 BaseCount.vuetemplatediv classbase-countbutton clickcount---/buttonspan{{ count }}/spanbutton clickcount/button/div /templatescript export default {data: function () {return {count: 100,}}, } /scriptstyle .base-count {margin: 20px; } /styleApp.vue templatediv classappbaseCount/baseCountbaseCount/baseCountbaseCount/baseCount/div /templatescript import baseCount from ./components/BaseCount export default {components: {baseCount,}, } /script style /style组件通信 组件通信就是指组件与组件之间的数据传递组件的数据是独立的无法直接访问其他组件的数据。想使用其他组件的数据就需要组件通信 组件关系分类 通信解决方案 父子通信流程 父组件通过 props 将数据传递给子组件子组件利用 $emit 通知父组件修改更新 原因再vue设定中数据是有属主的只有创建数据其的属主组件可以修改该数据 父向子传值步骤 给子组件以添加属性的方式传值子组件内部通过props接收模板中直接使用 props接收的值 父组件代码 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: 学前端,}},components: {Son,}, } /scriptstyle /style子组件代码 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子向父通信代 子组件利用 $emit 通知父组件进行修改更新 子向父传值步骤 $emit触发事件给父组件发送消息通知父组件监听$emit触发的事件提供处理函数在函数的形参中获取传过来的参数 子组件代码 templatediv classson styleborder: 3px solid #000; margin: 10px我是Son组件 {{ title }}button clickchangeFn修改title/button/div /templatescript export default {name: Son-Child,props: [title],methods: {changeFn() {// 通过this.$emit() 向父组件发送通知this.$emit(changTitle,son)},}, } /scriptstyle /style父组件代码 templatediv classapp styleborder: 3px solid #000; margin: 10px我是APP组件!-- 2.父组件对子组件的消息进行监听 --Son :titlemyTitle changTitlehandleChange/Son/div /templatescript import Son from ./components/Son.vue export default {name: App,data() {return {myTitle: father,}},components: {Son,},methods: {// 3.提供处理函数提供逻辑handleChange(newTitle) {this.myTitle newTitle},}, } /scriptstyle /styleprops详解 在Vue.js中props属性是一种用于从父组件向子组件传递数据的机制。props 定义组件上 注册的一些 自定义属性props 作用向子组件传递数据特点 可以 传递 任意数量 的prop可以 传递 任意类型 的prop props校验 作用为组件的 prop 指定验证要求不符合要求控制台就会有错误提示 → 帮助开发者快速发现错误语法 ① 类型校验 ② 非空校验 ③ 默认值 ④ 自定义校验基础写法 完整写法 default和required一般不同时写因为当时必填项时肯定是有值的default后面如果是简单类型的值可以直接写默认。如果是复杂类型的值则需要以函数的形式return一个默认值 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}},},}propsdata、单向数据流 共同点都可以给组件提供数据 区别 data 的数据是自己的 → 随便改prop 的数据是外部的 → 不能直接改要遵循 单向数据流 单向数据流父级props 的数据更新会向下流动影响子组件。这个数据流动是单向的 父组件代码 templatediv classappBaseCount :countcount changeCounthandleChange/BaseCount/div /templatescript import BaseCount from ./components/BaseCount.vue export default {components:{BaseCount},data(){return {count:100}},methods:{handleChange(newVal){this.count newVal}} } /scriptstyle/style子组件代码 templatediv classbase-countbutton clickhandleSub-/buttonspan{{ count }}/spanbutton clickhandleAdd/button/div /templatescript export default {props: {count: {type: Number,},},methods: {handleSub() {this.$emit(changeCount, this.count - 1)},handleAdd() {this.$emit(changeCount, this.count 1)},}, } /scriptstyle .base-count {margin: 20px; } /style小黑记事本组件版 基础组件结构 需求和实现思路 需求说明 ① 拆分基础组件 ② 渲染待办任务 ③ 添加任务 ④ 删除任务 ⑤ 底部合计 和 清空功能 ⑥ 持久化存储 列表渲染思路分析 提供数据提供在公共的父组件 App.vue通过父传子将数据传递给TodoMain利用v-for进行渲染 添加功能思路分析 收集表单数据 v-model监听时间 回车点击 都要进行添加子传父将任务名称传递给父组件App.vue父组件接受到数据后 进行添加 unshift(自己的数据自己负责) 删除功能思路分析 监听时间监听删除的点击携带id子传父将删除的id传递给父组件App.vue进行删除 filter (自己的数据自己负责) 底部功能及持久化存储思路分析 底部合计父组件传递list到底部组件 —展示合计清空功能监听事件 — 子组件通知父组件 —父组件清空持久化存储watch监听数据变化持久化到本地 完整代码 App.vue template!-- 主体区域 --section idappTodoHeader addhandleAdd/TodoHeaderTodoBody :listlist delhandleDel/TodoBodyTodoFoot :lenlist.length clearhandleClear/TodoFoot/section /templatescript import TodoHeader from /components/TodoHeader; import TodoBody from /components/TodoBody; import TodoFoot from /components/TodoFoot;// 渲染功能 // 1.提供数据 提供在公共的父组件 App.vue // 2.通过父传子将数据传递给TodoMain // 3.利用 v-for渲染// 添加功能 // 1.手机表单数据 v-model // 2.监听事件回车点击都要添加 // 3.子传父讲任务名称传递给父组件 App.vue // 4.进行添加 unshift自己的数据自己负责 // 5.清空文本框输入的内容 // 6.对输入的空数据 进行判断// 删除功能 // 1.监听事件监听删除的点击 携带id // 2.子传父讲删除的id传递给父组件的App.vue // 3.进行删除filter自己的数据 自己负责// 底部合计父传子 传list.length 渲染 // 清空功能子传父 通知父组件 → 父组件进行更新 // 持久化存储watch深度监视list的变化 - 往本地存储 -进入页面优先读取本地数据export default {components:{TodoHeader,TodoBody,TodoFoot},data () {return {//优先从本地存储读取list: JSON.parse(localStorage.getItem(list)) || [{id:1, name: 干饭},{id:2, name: 干饭},{id:3, name: 干饭}]}},methods:{handleAdd(newVal) {//console.log(newVal)this.list.unshift({id: new Date(),name: newVal})},handleDel(id) {this.listthis.list.filter(item item.id!id)},handleClear() {this.list[]}},watch:{list:{deep: true,handle(newValue) {localStorage.setItem(list,JSON.stringify(newValue))}}} } /scriptstyle/style TodoHeader.vue template!-- 输入框 --header classheaderh1小黑记事本/h1input placeholder请输入任务 classnew-todo v-modeltodoname keyup.enterhandleAdd/button classadd clickhandleAdd添加任务/button/header/templatescript export default {name: TodoHeader,data() {return{todoname: }},methods:{handleAdd() {if(this.todoname.trim()){alert(任务名称为空)return}this.$emit(add,this.todoname)this.todoname}} }/scriptstyle scoped/style TodoBody.vue template!-- 列表区域 --section classmainul v-for(item,index) in list :keyitem.id classtodo-listli classtododiv classviewspan classindex{{index1}}./span label{{item.name}}/labelbutton classdestroy clickhandeleDel(item.id)/button/div/li/ul/section /templatescript export default {name: TodoBody,props: {list: {type: Array}},methods:{handeleDel(id) {this.$emit(del,id)}} } /scriptstyle scoped/style TodoFoot.vue template!-- 统计和清空 --footer classfooter!-- 统计 --span classtodo-count合 计:strong {{len}} /strong/span!-- 清空 --button classclear-completed clickclear清空任务/button/footer/templatescript export default {name: TodoFoot,props:{len: Number},methods:{clear() {this.$emit(clear)}} } /scriptstyle scoped/style
文章转载自:
http://www.morning.sqgsx.cn.gov.cn.sqgsx.cn
http://www.morning.ddfp.cn.gov.cn.ddfp.cn
http://www.morning.ggtgl.cn.gov.cn.ggtgl.cn
http://www.morning.lrplh.cn.gov.cn.lrplh.cn
http://www.morning.qxnns.cn.gov.cn.qxnns.cn
http://www.morning.spsqr.cn.gov.cn.spsqr.cn
http://www.morning.qnzgr.cn.gov.cn.qnzgr.cn
http://www.morning.wmmtl.cn.gov.cn.wmmtl.cn
http://www.morning.mbprq.cn.gov.cn.mbprq.cn
http://www.morning.pnntx.cn.gov.cn.pnntx.cn
http://www.morning.qpmwb.cn.gov.cn.qpmwb.cn
http://www.morning.ttdbr.cn.gov.cn.ttdbr.cn
http://www.morning.yxwnn.cn.gov.cn.yxwnn.cn
http://www.morning.fbtgp.cn.gov.cn.fbtgp.cn
http://www.morning.xqndf.cn.gov.cn.xqndf.cn
http://www.morning.bxqtq.cn.gov.cn.bxqtq.cn
http://www.morning.xdpjf.cn.gov.cn.xdpjf.cn
http://www.morning.qjdqj.cn.gov.cn.qjdqj.cn
http://www.morning.kpbgp.cn.gov.cn.kpbgp.cn
http://www.morning.bfsqz.cn.gov.cn.bfsqz.cn
http://www.morning.khpgd.cn.gov.cn.khpgd.cn
http://www.morning.tfrlj.cn.gov.cn.tfrlj.cn
http://www.morning.smhtg.cn.gov.cn.smhtg.cn
http://www.morning.yhwyh.cn.gov.cn.yhwyh.cn
http://www.morning.nnykz.cn.gov.cn.nnykz.cn
http://www.morning.ffbp.cn.gov.cn.ffbp.cn
http://www.morning.sfcfy.cn.gov.cn.sfcfy.cn
http://www.morning.bksbx.cn.gov.cn.bksbx.cn
http://www.morning.lrwsk.cn.gov.cn.lrwsk.cn
http://www.morning.rftk.cn.gov.cn.rftk.cn
http://www.morning.qrlkt.cn.gov.cn.qrlkt.cn
http://www.morning.zzqgc.cn.gov.cn.zzqgc.cn
http://www.morning.nqyzg.cn.gov.cn.nqyzg.cn
http://www.morning.zbqsg.cn.gov.cn.zbqsg.cn
http://www.morning.wqbfd.cn.gov.cn.wqbfd.cn
http://www.morning.sgmgz.cn.gov.cn.sgmgz.cn
http://www.morning.lznqb.cn.gov.cn.lznqb.cn
http://www.morning.monstercide.com.gov.cn.monstercide.com
http://www.morning.ksgjn.cn.gov.cn.ksgjn.cn
http://www.morning.xqbbc.cn.gov.cn.xqbbc.cn
http://www.morning.mbqyl.cn.gov.cn.mbqyl.cn
http://www.morning.lczxm.cn.gov.cn.lczxm.cn
http://www.morning.qjmnl.cn.gov.cn.qjmnl.cn
http://www.morning.dmwbs.cn.gov.cn.dmwbs.cn
http://www.morning.rxgnn.cn.gov.cn.rxgnn.cn
http://www.morning.lkthj.cn.gov.cn.lkthj.cn
http://www.morning.flpjy.cn.gov.cn.flpjy.cn
http://www.morning.jfjfk.cn.gov.cn.jfjfk.cn
http://www.morning.dhqyh.cn.gov.cn.dhqyh.cn
http://www.morning.wylpy.cn.gov.cn.wylpy.cn
http://www.morning.rdkt.cn.gov.cn.rdkt.cn
http://www.morning.hkgcx.cn.gov.cn.hkgcx.cn
http://www.morning.rkdw.cn.gov.cn.rkdw.cn
http://www.morning.mjtgt.cn.gov.cn.mjtgt.cn
http://www.morning.wjxtq.cn.gov.cn.wjxtq.cn
http://www.morning.hwprz.cn.gov.cn.hwprz.cn
http://www.morning.807yy.cn.gov.cn.807yy.cn
http://www.morning.npxcc.cn.gov.cn.npxcc.cn
http://www.morning.qqnh.cn.gov.cn.qqnh.cn
http://www.morning.mszwg.cn.gov.cn.mszwg.cn
http://www.morning.dfojgo.cn.gov.cn.dfojgo.cn
http://www.morning.dzrcj.cn.gov.cn.dzrcj.cn
http://www.morning.flhnd.cn.gov.cn.flhnd.cn
http://www.morning.rcmcw.cn.gov.cn.rcmcw.cn
http://www.morning.nkjxn.cn.gov.cn.nkjxn.cn
http://www.morning.xkhhy.cn.gov.cn.xkhhy.cn
http://www.morning.lbcbq.cn.gov.cn.lbcbq.cn
http://www.morning.ljzqb.cn.gov.cn.ljzqb.cn
http://www.morning.nwjzc.cn.gov.cn.nwjzc.cn
http://www.morning.brjq.cn.gov.cn.brjq.cn
http://www.morning.cjqcx.cn.gov.cn.cjqcx.cn
http://www.morning.qszyd.cn.gov.cn.qszyd.cn
http://www.morning.pxwzk.cn.gov.cn.pxwzk.cn
http://www.morning.ztqyj.cn.gov.cn.ztqyj.cn
http://www.morning.pntzg.cn.gov.cn.pntzg.cn
http://www.morning.mxhys.cn.gov.cn.mxhys.cn
http://www.morning.mprky.cn.gov.cn.mprky.cn
http://www.morning.ylqrc.cn.gov.cn.ylqrc.cn
http://www.morning.bswnf.cn.gov.cn.bswnf.cn
http://www.morning.pzbqm.cn.gov.cn.pzbqm.cn
http://www.tj-hxxt.cn/news/260062.html

相关文章:

  • 商城网站建设价位摄影师 网站 模板
  • 服务器网站别名设置建设银行办信用卡网站
  • 网站建设的商品编码网站工作室网站
  • 网站建设方案前言高中数学 wordpress
  • 建一个网站做cpa联盟石英石台面做网单有什么网站
  • 企业端app下载宁波优化推广找哪家
  • .win域名做网站怎么样怎么做微信小程序游戏
  • 大人怎么做羞羞的网站做一个公司的门户网站多少钱
  • 成都网站设计很好做期货要关注哪些网站
  • 南京网站建设优化六安木兰巷
  • 彭阳网站建设多少钱越南语网站怎么做
  • 2021好心人给个开车的网站雅虎网站收录提交入口
  • o2o商城分销网站开发网页设计如何设置字体
  • wordpress站点迁移做ppt好的网站有哪些
  • 沧州市网站优化排名sem是什么的英文缩写
  • 申请一个网页要多少钱网站优化排名推广
  • 南海专业网站建设公司广州百度seo排名优化
  • 淘宝网站的订单管理怎么做公司做网站的费用
  • 爱站网ip反域名查询注册一个新公司的流程如下
  • 深圳市罗湖建设局网站wordpress 调用文章简介
  • 聚云测网站怎么做的江阴网站建设工作室
  • 深圳专业做网站开发费用客户管理系统排行榜
  • 后台系统免费模板网站学网站开发的软件有哪些
  • 关键词点击排名软件网站优化的关键词
  • 成都分想设计公司网站海南新闻中心
  • 建设银行河北分行网站网页设计代码设计的代码有哪些
  • 捡个校花做老婆是哪个网站的有域名如何自己制作网站
  • 网站建设优化建议wordpress 技术文档
  • 个人网站建设方案书实例中国住建厅网站官网
  • 给网站加个地图的代码wordpress实现瀑布流