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

网页设计实验报告对于dw掌握情况关键词优化心得

网页设计实验报告对于dw掌握情况,关键词优化心得,手机怎么设计平面图片,wordpress一小时建站1.组件的本质 组件就是一组 DOM 元素的封装,本质就是一个对象 (mounted函数中打印一下组件即可看到打印的是一个对象) 如何利用javascript对象来描述一个组件? const MyComponent {render() {return {tag: div,props: {onClick: () > alert(hell…

1.组件的本质

组件就是一组 DOM 元素的封装,本质就是一个对象

(mounted函数中打印一下组件即可看到打印的是一个对象)

如何利用javascript对象来描述一个组件?

const MyComponent = {render() {return {tag: 'div',props: {onClick: () => alert('hello')},children: 'click Me'}}
}const vnode = {tag: MyComponent
}

如何修改渲染器的内容?渲染函数时写的只是针对虚拟节点不是针对组件(即传入一个对象)

2.手写组件渲染函数

虚拟节点为字符串时:手写Vue渲染器render函数-CSDN博客

重点:和普通字符串tag不同的时,判断vnode.tag是一个组件时,通过组件的render函数获取组件对象的虚拟节点

    <div id="app"></div><script>// 手写render函数组件对象渲染到页面/*重点:使用vnode.tag作为创建的dom标签el(判断vnode.tag是一个组件时,通过组件的render函数获取组件对象的虚拟节点)*//*** @vnode 虚拟 DOM 对象* @container 一个真实 DOM 元素,作为挂载点,渲染器会把虚拟 DOM 渲染到该挂载点*/function render(vnode, container) {// 通过判断vode的tag为对象则为组件渲染if(typeof vnode.tag === "string"){mount(vnode, container);}else if(typeof vnode.tag === "object"){let comVnode = vnode.tag.render();mount(comVnode, container);}else{// ...其他操作}}// tag为字符串时的渲染函数function mount(vnode, container) {// 使用vnode.tag作为创建的dom标签ellet el = document.createElement(vnode.tag);// 遍历vnode.props,将属性 事件添加到DOM上(事件即给元素添加监听事件;)for (let key in vnode.props) {// 判断如果为事件则将其设置到el中if ((/^(on)/).test(key)) {el.addEventListener(key.substr(2).toLowerCase(), vnode.props[key]);}}// 处理 children(字符串和数组)if (typeof vnode.children === "string") {el.appendChild(document.createTextNode(vnode.children));} else if (Array.isArray(vnode.children)) { //是数组进行遍历并递归调用render方法vnode.children.forEach(child => {render(child, el);});}// 将元素添加到挂载节点container下container.appendChild(el);}// render函数测试const container = document.getElementById('app')// 仿组件结构(可以通过render方法获取组件的虚拟节点对象数据)const MyComponent = {render() {return {tag: 'div',props: {},children: [{tag: 'p',props: {},children: '我是一个p标签'},{tag: 'button',props: {onClick: () => alert('hi vue')},children: '按钮'}]}}}const vnode = {tag: MyComponent}render(vnode, container)

http://www.bjxfkj.com.cn/article/100492.html

相关文章:

  • 网站底部固定广告代码石家庄关键词优化报价
  • 合肥知名网站制作西安网站建设公司十强
  • 佛山高明网站建设设计北京百度网讯人工客服电话
  • windows 没有wordpress西安seo外包服务
  • 来安县城乡规划建设局网站seo网站排名优化软件是什么
  • 柳市网页设计seo查询
  • 融水做的比较好的网站有哪些海外短视频软件
  • 哪些网站可以找到做海报的素材漯河网络推广哪家好
  • 微商网站制作抖音seo怎么收费
  • 企业网站导航一般做多高安卓优化大师最新版下载
  • 太原建设北路小学网站seo薪酬水平
  • html5简单网页源代码百度seo推广怎么做
  • 秦皇岛手机网站推动防控措施持续优化
  • 网站建设市场占有率花西子网络营销案例分析
  • 网络营销策略分析二十条优化
  • wordpress文章更新软件seo全站优化全案例
  • 怎么做网站图标在线外链
  • 门户网站快速制作怎样做百度推广网页
  • 网站加入悬浮客服优质外链平台
  • 网站案例分析教育大型营销型网站制作
  • 做网站图片太多怎么办舆情管理
  • 十堰高端网站建设企业营销模式
  • 微商城app下载株洲百度seo
  • 如何使用ps做网站整站seo排名外包
  • 同城装修接单平台seo优化效果怎么样
  • 什么是平台网站淘宝seo对什么内容优化
  • 网络托管公司有哪些东莞网络优化服务商
  • 做家常菜网站seo技术培训广东
  • 邯郸做网站推广多少钱app推广引流方法
  • 陕西网站建设设计公司官网模板