Przeglądaj źródła

refactor: layout optional features

Evan You 7 lat temu
rodzic
commit
b12247d638

+ 9 - 8
packages/core/src/index.ts

@@ -1,21 +1,22 @@
-// render api
+// Core API
 export { h, Fragment, Portal } from './h'
+export { Component } from './component'
 export { cloneVNode, createPortal, createFragment } from './vdom'
 export { createRenderer } from './createRenderer'
-export { Component } from './component'
 
-// observer api
+// Observer API
 export * from '@vue/observer'
 
-// scheduler api
+// Scheduler API
 export { nextTick } from '@vue/scheduler'
 
-// internal api
+// Internal API
 export { createComponentInstance } from './componentUtils'
 
-// import-on-demand apis
-export { applyDirective } from './directive'
-export { Provide, Inject } from './context'
+// Optional APIs
+// these are imported on-demand and can be tree-shaken
+export { applyDirective } from './optional/directive'
+export { Provide, Inject } from './optional/context'
 
 // flags & types
 export { ComponentClass, FunctionalComponent } from './component'

+ 0 - 0
packages/core/src/optional/asyncComponent.ts


+ 0 - 0
packages/core/src/optional/await.ts


+ 2 - 2
packages/core/src/context.ts → packages/core/src/optional/context.ts

@@ -1,6 +1,6 @@
 import { observable } from '@vue/observer'
-import { Component } from './component'
-import { Slots } from './vdom'
+import { Component } from '../component'
+import { Slots } from '../vdom'
 
 const contextStore = observable() as Record<string, any>
 

+ 2 - 2
packages/core/src/directive.ts → packages/core/src/optional/directive.ts

@@ -1,5 +1,5 @@
-import { VNode } from './vdom'
-import { MountedComponent } from './component'
+import { VNode } from '../vdom'
+import { MountedComponent } from '../component'
 
 export interface DirectiveBinding {
   instance: MountedComponent

+ 0 - 0
packages/core/src/optional/keepAlive.ts