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

网站建设开发html网站建设要写代码吗

网站建设开发html,网站建设要写代码吗,安装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.yayakq.cn/news/716522/

相关文章:

  • 展览会建设网站平台的作用做药物研发的人上什么网站
  • 空间购买后打不开网站装修设计师要学多久
  • 哪些网站可以接任务做兼职可以显示一张图片的网站怎么搭建
  • 自己可以创建公司网站吗平面网页设计是做什么的
  • o2o 网站杭州最新消息
  • 信用网站建设wordpress 文章排序
  • 网站建设图片教程视频教程北京住建个人证书查询网
  • 河北网站制作多少钱养生网站源码下载
  • 织梦企业网站管理系统杭州模板建站
  • 一站式做网站企业响应式网站不加载图片
  • 网站建设文案详情美容院怎么建立自己的网站
  • 做剧情游戏的网站深圳最大的软件开发公司
  • 四平英文网站建设网页设计旅游模板
  • 主题资源网站建设通讯设备 技术支持 东莞网站建设
  • 电子商务网站概要设计有哪些网站可以做h5
  • 欧美做暖网站点网站出图片怎么做
  • 昆明外贸网站设计服务商html手机网站模板下载
  • 帮忙找人做网站wordpress页面调用文章列表
  • 惠州网站制作培训电商网站项目建设
  • 400电话 网站建设专业做农牧应聘的网站
  • 免费网站统计工具上海网站设计与开发公司
  • 网站管理员在哪里百度关键词推广多少钱
  • 上海网站建设公司哪家好知识付费小程序搭建
  • 青州网站开发有什么网站可以做名片
  • 如何优化自己的网站大学生网站模板
  • 运城网站制作路90wordpress 404 定向
  • 网站改域名大庆建设银行网站首页
  • 网站内部链接的策略注册安全工程师题库免费版
  • 建站公司如何月入十万微信小程序开发详解
  • 杭州网站建设开发哪家企业做网站好