Class: Provider
Defined in: packages/renderer/types/provider/provider.d.ts:38
Provider 类是应用的核心提供者,负责:
- 管理项目配置和状态
- 加载依赖和资源
- 初始化路由
- 提供全局API和服务
Extends
Base
Constructors
Constructor
new Provider(
options
):Provider
Defined in: packages/renderer/types/provider/provider.d.ts:59
创建Provider实例
Parameters
options
配置选项
Returns
Provider
Overrides
Base.constructor
Properties
adapter
adapter:
ProvideAdapter
Defined in: packages/renderer/types/provider/provider.d.ts:43
apis
apis:
Record
<string
, (...args
) =>Promise
<any
>>
Defined in: packages/renderer/types/provider/provider.d.ts:44
components
components:
Record
<string
,any
>
Defined in: packages/renderer/types/provider/provider.d.ts:50
dependencies
dependencies:
Record
<string
, () =>Promise
<any
>>
Defined in: packages/renderer/types/provider/provider.d.ts:45
globals
globals:
Record
<string
,any
>
Defined in: packages/renderer/types/provider/provider.d.ts:41
isReady
isReady:
boolean
Defined in: packages/core/types/models/base.d.ts:3
Inherited from
Base.isReady
library
library:
Record
<string
,any
>
Defined in: packages/renderer/types/provider/provider.d.ts:47
listeners
protected
listeners: () =>void
[]
Defined in: packages/core/types/models/base.d.ts:2
Returns
void
Inherited from
Base.listeners
materials
materials:
Record
<string
, () =>Promise
<any
>>
Defined in: packages/renderer/types/provider/provider.d.ts:46
mode
mode:
ContextMode
Defined in: packages/renderer/types/provider/provider.d.ts:40
modules
modules:
Record
<string
, () =>Promise
<any
>>
Defined in: packages/renderer/types/provider/provider.d.ts:42
nodeEnv
nodeEnv:
NodeEnv
Defined in: packages/renderer/types/provider/provider.d.ts:51
options
options:
ProviderOptions
Defined in: packages/renderer/types/provider/provider.d.ts:39
project
project:
null
|ProjectSchema
Defined in: packages/renderer/types/provider/provider.d.ts:49
service
service:
Service
Defined in: packages/renderer/types/provider/provider.d.ts:48
Methods
createDslRenderer()
createDslRenderer(
dsl
,opts?
):object
Defined in: packages/renderer/types/provider/provider.d.ts:100
创建 DSL 渲染器
- 合并默认选项和自定义选项
- 创建 DSL 加载器
- 返回渲染器实例
Parameters
dsl
BlockSchema
区块 DSL 配置
opts?
Partial
<CreateRendererOptions
>
渲染选项
Returns
object
渲染器实例
context
context:
Context
renderer
renderer:
any
createMock()
createMock(
func
): (...args
) =>Promise
<any
>
Defined in: packages/renderer/types/provider/provider.d.ts:60
Parameters
func
(...args
) => any
Returns
(...
args
):Promise
<any
>
Parameters
args
...any
[]
Returns
Promise
<any
>
definePluginComponent()
definePluginComponent(
from
):any
Defined in: packages/renderer/types/provider/provider.d.ts:132
定义基于插件的异步组件
- 根据插件来源获取插件实例
- 返回插件组件
Parameters
from
NodeFromPlugin
插件来源配置
Returns
any
Vue异步组件
defineUrlSchemaComponent()
defineUrlSchemaComponent(
url
,name?
):any
Defined in: packages/renderer/types/provider/provider.d.ts:124
定义基于URL的异步组件
- 根据URL获取DSL配置
- 如果获取成功,设置组件名称
- 创建并返回DSL渲染器
Parameters
url
string
DSL配置URL
name?
string
可选的自定义组件名称
Returns
any
Vue异步组件
getDsl()
getDsl(
id
):Promise
<null
|BlockSchema
>
Defined in: packages/renderer/types/provider/provider.d.ts:89
Parameters
id
string
Returns
Promise
<null
| BlockSchema
>
getDslByUrl()
getDslByUrl(
url
):Promise
<null
|BlockSchema
>
Defined in: packages/renderer/types/provider/provider.d.ts:90
Parameters
url
string
Returns
Promise
<null
| BlockSchema
>
getFile()
getFile(
id
):null
|PageFile
|BlockFile
Defined in: packages/renderer/types/provider/provider.d.ts:86
Parameters
id
string
Returns
null
| PageFile
| BlockFile
getHomepage()
getHomepage():
null
|PageFile
Defined in: packages/renderer/types/provider/provider.d.ts:88
Returns
null
| PageFile
getPage()
getPage(
id
):null
|PageFile
Defined in: packages/renderer/types/provider/provider.d.ts:87
Parameters
id
string
Returns
null
| PageFile
getRenderComponent()
getRenderComponent(
id
,output?
):Promise
<any
>
Defined in: packages/renderer/types/provider/provider.d.ts:114
获取渲染组件
- 根据ID查找文件(页面或区块)
- 如果找到文件且提供了output回调,则调用它
- 尝试从模块缓存加载原始Vue组件
- 如果找不到原始组件,则获取DSL并创建渲染器
Parameters
id
string
文件ID
output?
(file
) => void
找到文件时的回调函数
Returns
Promise
<any
>
Promise<Vue组件>
initMock()
initMock(
global?
):void
Defined in: packages/renderer/types/provider/provider.d.ts:71
Parameters
global?
any
Returns
void
install()
install(
app
):void
Defined in: packages/renderer/types/provider/provider.d.ts:85
Vue 插件安装方法
- 安装所有第三方库插件
- 执行自定义安装函数(如果提供)
- 安装访问适配器
- 提供全局 Provider 实例
- 设计模式下设置错误处理器
- 执行增强函数(如果提供)
Parameters
app
App
Vue 应用实例
Returns
void
load()
load(
project
):Promise
<void
>
Defined in: packages/renderer/types/provider/provider.d.ts:70
加载项目配置并初始化
- 从模块或服务加载项目配置
- 根据运行模式加载依赖或资源
- 初始化Mock数据
- 创建API接口
- 初始化路由(非uniapp平台)
Parameters
project
ProjectSchema
项目配置
Returns
Promise
<void
>
ready()
ready(
callback
):void
Defined in: packages/core/types/models/base.d.ts:5
Parameters
callback
() => void
Returns
void
Inherited from
Base.ready
resetReady()
resetReady():
void
Defined in: packages/core/types/models/base.d.ts:6
Returns
void
Inherited from
Base.resetReady
triggerReady()
protected
triggerReady():void
Defined in: packages/core/types/models/base.d.ts:4
Returns
void
Inherited from
Base.triggerReady