• createElement


    templet = {
                type:"div",
                attr:{ id:"div2"},
                classList:["2"],
                children:[
                    {
                        type:"span",
                        attr:{ id:"text1", value:"is text"},
                        classList:["1"],
                        id:"span1",
                        events:{},
                        children:[
                            {
                                type:"span",
                                attr:{ id:"son1", value:"is son1"},
                                classList:["1"],
                                id:"son1",
                                events:{},
                            }
                        ]
                    },
                    {
                        type:"p",
                        attr:{ id:"p1", value:"is p"},
                        classList:["1"],
                        id:"p1",
                        events:{},
                        children:[
                            {
                                type:"p",
                                attr:{ id:"p2", value:"is son2"},
                                classList:["1"],
                                id:"son2",
                                events:{},
                            }
                        ]
                    },
                ],
                id:"div2",
                events:{}
            }
            function createDOM(obj){
                const {type,attr,children,id} = obj
                let root = document.createElement(type)
                console.log(root)
                if(attr){
                    let key = Object.keys(attr)
                    key.forEach(item => {
                        if(item !== 'value'){
                            root.setAttribute(item,attr[item])
                        }else if(item === 'value'){
                            root.innerText = attr[item]
                        }
                    });
                }
                if(children){
                    let child = Object.values(children)
                    for(let i=0;i<child.length;i++){
                        let c = createDOM(child[i])
                        root.appendChild(c)
                    }
                    return root
                }else{
                    return root
                }
            }
            let c = createDOM(templet)
            console.log(c)
            document.body.appendChild(c)
  • 相关阅读:
    3.java开发环境配置
    2.java主要特性
    1.java中main函数理解
    测试项目团队角色岗位职责
    单身程序员
    软件测评师考试
    vue父子组件通信
    python偏函数使用
    Numpy+Pandas读取数据
    chrome无界面模式headless配置
  • 原文地址:https://www.cnblogs.com/MDGE/p/14349075.html
Copyright © 2020-2023  润新知