Skip to content

Commit

Permalink
feat: createPortal should work
Browse files Browse the repository at this point in the history
  • Loading branch information
yuche committed Nov 2, 2017
1 parent 189f4ee commit b8d45aa
Show file tree
Hide file tree
Showing 4 changed files with 14 additions and 4 deletions.
4 changes: 2 additions & 2 deletions jest.config.js
Expand Up @@ -30,8 +30,8 @@ module.exports = {
},
rootDir: __dirname,
testMatch: [
'<rootDir>/packages/nerv/__tests__/componentDidCatch.spec.js'
// '<rootDir>/packages/**/__tests__/**/*spec.js'
// '<rootDir>/packages/nerv/__tests__/componentDidCatch.spec.js'
'<rootDir>/packages/**/__tests__/**/*spec.js'
],
transform: {
'^.+\\.jsx?$': 'babel-jest',
Expand Down
2 changes: 2 additions & 0 deletions packages/nerv/src/clone-element.ts
@@ -1,5 +1,7 @@
import createElement from './create-element'
import { extend, clone } from 'nerv-utils'
// import { isValidElement } from 'nerv-shared'

export default function cloneElement (vnode, props, ...children): any {
const properties = extend(clone(vnode.props), props)
if (vnode.namespace) {
Expand Down
7 changes: 7 additions & 0 deletions packages/nerv/src/dom.ts
@@ -1,5 +1,6 @@
import { isVNode, isWidget } from 'nerv-shared'
import { updateVNode } from './lifecycle'
import { render } from './render'

export function unmountComponentAtNode (dom) {
const component = dom._component
Expand All @@ -18,3 +19,9 @@ export function unmountComponentAtNode (dom) {
export function findDOMNode (component) {
return component || (component.dom && component)
}

export function createPortal (vnode, container: Element) {
// mountVNode can handle array of vnodes for us
render(vnode, container)
return null
}
5 changes: 3 additions & 2 deletions packages/nerv/src/index.ts
Expand Up @@ -16,8 +16,9 @@ export {
render,
nextTick,
options,
unmountComponentAtNode,
isValidElement
findDOMNode,
isValidElement,
unmountComponentAtNode
}

export default {
Expand Down

0 comments on commit b8d45aa

Please sign in to comment.