component.ts — vue Source File
Architecture documentation for component.ts, a typescript file in the vue codebase. 13 imports, 4 dependents.
Entity Profile
Dependency Diagram
graph LR a6c11f09_c764_e550_187c_e2c0228cc358["component.ts"] a936832e_3507_156a_8272_84ed906b2f99["options.ts"] a6c11f09_c764_e550_187c_e2c0228cc358 --> a936832e_3507_156a_8272_84ed906b2f99 ff719170_7af7_c248_aced_e6154d830e6a["ComponentOptions"] a6c11f09_c764_e550_187c_e2c0228cc358 --> ff719170_7af7_c248_aced_e6154d830e6a 8c54f2a2_a72b_0919_f6c3_bb6b0e61fdae["vnode.ts"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 8c54f2a2_a72b_0919_f6c3_bb6b0e61fdae 016046ec_e700_347f_ec4d_28f0cf0a7f47["ScopedSlotsData"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 016046ec_e700_347f_ec4d_28f0cf0a7f47 f80dd31d_1559_6bda_7ead_287b819c4d3a["VNodeChildren"] a6c11f09_c764_e550_187c_e2c0228cc358 --> f80dd31d_1559_6bda_7ead_287b819c4d3a 9346a995_84a8_5da5_a8c8_d858bb86ad50["VNodeData"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 9346a995_84a8_5da5_a8c8_d858bb86ad50 2a27bd4e_c7ee_f42b_a64f_4bf920b70ca7["global-api.ts"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 2a27bd4e_c7ee_f42b_a64f_4bf920b70ca7 085a38ca_16cc_29e1_37c3_08642fd7c0ea["GlobalAPI"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 085a38ca_16cc_29e1_37c3_08642fd7c0ea 1e01c042_34cd_21ed_a5a8_7b3ff82bc298["GlobalAPI"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 1e01c042_34cd_21ed_a5a8_7b3ff82bc298 f6868225_acf7_afdc_ebd3_15704ddb6566["vnode"] a6c11f09_c764_e550_187c_e2c0228cc358 --> f6868225_acf7_afdc_ebd3_15704ddb6566 816bcd3b_1a7f_7b21_ab25_7a23681aea66["watcher"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 816bcd3b_1a7f_7b21_ab25_7a23681aea66 648c881d_0a8b_2e54_833a_913760ae9a68["apiSetup"] a6c11f09_c764_e550_187c_e2c0228cc358 --> 648c881d_0a8b_2e54_833a_913760ae9a68 b9e2c8f8_e40f_d13c_47c1_35fc432c6051["effectScope"] a6c11f09_c764_e550_187c_e2c0228cc358 --> b9e2c8f8_e40f_d13c_47c1_35fc432c6051 2a27bd4e_c7ee_f42b_a64f_4bf920b70ca7["global-api.ts"] 2a27bd4e_c7ee_f42b_a64f_4bf920b70ca7 --> a6c11f09_c764_e550_187c_e2c0228cc358 a936832e_3507_156a_8272_84ed906b2f99["options.ts"] a936832e_3507_156a_8272_84ed906b2f99 --> a6c11f09_c764_e550_187c_e2c0228cc358 927c5f49_01c1_66e9_b2d5_fea2558d2cf8["ssr.ts"] 927c5f49_01c1_66e9_b2d5_fea2558d2cf8 --> a6c11f09_c764_e550_187c_e2c0228cc358 style a6c11f09_c764_e550_187c_e2c0228cc358 fill:#6366f1,stroke:#818cf8,color:#fff
Relationship Graph
Source Code
import type VNode from 'core/vdom/vnode'
import type Watcher from 'core/observer/watcher'
import { ComponentOptions } from './options'
import { SetupContext } from 'v3/apiSetup'
import { ScopedSlotsData, VNodeChildren, VNodeData } from './vnode'
import { GlobalAPI } from './global-api'
import { EffectScope } from 'v3/reactivity/effectScope'
// TODO this should be using the same as /component/
/**
* @internal
*/
export declare class Component {
constructor(options?: any)
// constructor information
static cid: number
static options: Record<string, any>
// extend
static extend: GlobalAPI['extend']
static superOptions: Record<string, any>
static extendOptions: Record<string, any>
static sealedOptions: Record<string, any>
static super: typeof Component
// assets
static directive: GlobalAPI['directive']
static component: GlobalAPI['component']
static filter: GlobalAPI['filter']
// functional context constructor
static FunctionalRenderContext: Function
static mixin: GlobalAPI['mixin']
static use: GlobalAPI['use']
// public properties
$el: any // so that we can attach __vue__ to it
$data: Record<string, any>
$props: Record<string, any>
$options: ComponentOptions
$parent: Component | undefined
$root: Component
$children: Array<Component>
$refs: {
[key: string]: Component | Element | Array<Component | Element> | undefined
}
$slots: { [key: string]: Array<VNode> }
$scopedSlots: { [key: string]: () => VNode[] | undefined }
$vnode: VNode // the placeholder node for the component in parent's render tree
$attrs: { [key: string]: string }
$listeners: Record<string, Function | Array<Function>>
$isServer: boolean
// public methods
$mount: (
el?: Element | string,
hydrating?: boolean
) => Component & { [key: string]: any }
$forceUpdate: () => void
$destroy: () => void
$set: <T>(
target: Record<string, any> | Array<T>,
// ... (153 more lines)
Domain
Subdomains
Dependencies
- ComponentOptions
- GlobalAPI
- GlobalAPI
- ScopedSlotsData
- VNodeChildren
- VNodeData
- apiSetup
- effectScope
- global-api.ts
- options.ts
- vnode
- vnode.ts
- watcher
Source
Frequently Asked Questions
What does component.ts do?
component.ts is a source file in the vue codebase, written in typescript. It belongs to the CompilerSFC domain, ScriptAnalyzer subdomain.
What does component.ts depend on?
component.ts imports 13 module(s): ComponentOptions, GlobalAPI, GlobalAPI, ScopedSlotsData, VNodeChildren, VNodeData, apiSetup, effectScope, and 5 more.
What files import component.ts?
component.ts is imported by 4 file(s): global-api.ts, options.ts, ssr.ts, vnode.ts.
Where is component.ts in the architecture?
component.ts is located at src/types/component.ts (domain: CompilerSFC, subdomain: ScriptAnalyzer, directory: src/types).
Analyze Your Own Codebase
Get architecture documentation, dependency graphs, and domain analysis for your codebase in minutes.
Try Supermodel Free