mirror of
https://github.com/smallmain/cocos-enhance-kit.git
synced 2025-01-15 15:31:08 +00:00
35 lines
724 B
JavaScript
35 lines
724 B
JavaScript
import EventTarget from './EventTarget.js'
|
|
|
|
export default class Node extends EventTarget {
|
|
constructor() {
|
|
super()
|
|
}
|
|
|
|
childNodes = []
|
|
|
|
appendChild(node) {
|
|
this.childNodes.push(node)
|
|
// if (node instanceof Node) {
|
|
// this.childNodes.push(node)
|
|
// } else {
|
|
// throw new TypeError('Failed to executed \'appendChild\' on \'Node\': parameter 1 is not of type \'Node\'.')
|
|
// }
|
|
}
|
|
|
|
cloneNode() {
|
|
const copyNode = Object.create(this)
|
|
|
|
Object.assign(copyNode, this)
|
|
return copyNode
|
|
}
|
|
|
|
removeChild(node) {
|
|
const index = this.childNodes.findIndex((child) => child === node)
|
|
|
|
if (index > -1) {
|
|
return this.childNodes.splice(index, 1)
|
|
}
|
|
return null
|
|
}
|
|
}
|