Class: Provider
Defined in: packages/renderer/types/provider/provider.d.ts:43
Provider 类是应用的核心提供者,负责:
- 管理项目配置和状态
- 加载依赖和资源
- 初始化路由
- 提供全局API和服务
Extends
Base
Constructors
Constructor
new Provider(
options):Provider
Defined in: packages/renderer/types/provider/provider.d.ts:66
创建Provider实例
Parameters
options
配置选项
Returns
Provider
Overrides
Base.constructor
Properties
adapter
adapter:
ProvideAdapter
Defined in: packages/renderer/types/provider/provider.d.ts:48
apis
apis:
Record<string, (...args) =>Promise<any>>
Defined in: packages/renderer/types/provider/provider.d.ts:49
components
components:
Record<string,any>
Defined in: packages/renderer/types/provider/provider.d.ts:57
dependencies
dependencies:
Record<string, () =>Promise<any>>
Defined in: packages/renderer/types/provider/provider.d.ts:50
globals
globals:
Record<string,any>
Defined in: packages/renderer/types/provider/provider.d.ts:46
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:52
libraryLocaleMap
libraryLocaleMap:
Record<string,string>
Defined in: packages/renderer/types/provider/provider.d.ts:54
libraryLocales
libraryLocales:
Record<string,any>
Defined in: packages/renderer/types/provider/provider.d.ts:53
listeners
protectedlisteners: () =>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:51
mode
mode:
ContextMode
Defined in: packages/renderer/types/provider/provider.d.ts:45
modules
modules:
Record<string, () =>Promise<any>>
Defined in: packages/renderer/types/provider/provider.d.ts:47
nodeEnv
nodeEnv:
NodeEnv
Defined in: packages/renderer/types/provider/provider.d.ts:58
options
options:
ProviderOptions
Defined in: packages/renderer/types/provider/provider.d.ts:44
project
project:
ProjectSchema|null
Defined in: packages/renderer/types/provider/provider.d.ts:56
service
service:
Service
Defined in: packages/renderer/types/provider/provider.d.ts:55
Methods
createDslRenderer()
createDslRenderer(
dsl,opts?):object
Defined in: packages/renderer/types/provider/provider.d.ts:108
创建 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:67
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:140
定义基于插件的异步组件
- 根据插件来源获取插件实例
- 返回插件组件
Parameters
from
NodeFromPlugin
插件来源配置
Returns
any
Vue异步组件
defineUrlSchemaComponent()
defineUrlSchemaComponent(
url,name?):any
Defined in: packages/renderer/types/provider/provider.d.ts:132
定义基于URL的异步组件
- 根据URL获取DSL配置
- 如果获取成功,设置组件名称
- 创建并返回DSL渲染器
Parameters
url
string
DSL配置URL
name?
string
可选的自定义组件名称
Returns
any
Vue异步组件
getDsl()
getDsl(
id):Promise<BlockSchema|null>
Defined in: packages/renderer/types/provider/provider.d.ts:97
Parameters
id
string
Returns
Promise<BlockSchema | null>
getDslByUrl()
getDslByUrl(
url):Promise<BlockSchema|null>
Defined in: packages/renderer/types/provider/provider.d.ts:98
Parameters
url
string
Returns
Promise<BlockSchema | null>
getFile()
getFile(
id):PageFile|BlockFile|null
Defined in: packages/renderer/types/provider/provider.d.ts:93
Parameters
id
string
Returns
PageFile | BlockFile | null
getHomepage()
getHomepage():
PageFile|null
Defined in: packages/renderer/types/provider/provider.d.ts:96
Returns
PageFile | null
getMenus()
getMenus(
name?,prefix?):MenuDataItem[]
Defined in: packages/renderer/types/provider/provider.d.ts:95
Parameters
name?
string
prefix?
string
Returns
getPage()
getPage(
id):PageFile|null
Defined in: packages/renderer/types/provider/provider.d.ts:94
Parameters
id
string
Returns
PageFile | null
getRenderComponent()
getRenderComponent(
id,output?):Promise<any>
Defined in: packages/renderer/types/provider/provider.d.ts:122
获取渲染组件
- 根据ID查找文件(页面或区块)
- 如果找到文件且提供了output回调,则调用它
- 尝试从模块缓存加载原始Vue组件
- 如果找不到原始组件,则获取DSL并创建渲染器
Parameters
id
string
文件ID
output?
(file) => void
找到文件时的回调函数
Returns
Promise<any>
Promise<Vue组件>
initGlobals()
initGlobals(
globals,options):void
Defined in: packages/renderer/types/provider/provider.d.ts:146
设置应用全局
Parameters
globals
GlobalConfig
options
Partial<InitGlobalsOptions>
Returns
void
initI18n()
initI18n(
app,libs,i18n?):void
Defined in: packages/renderer/types/provider/provider.d.ts:147
Parameters
app
App
libs
Record<string, any>
i18n?
I18nConfig
Returns
void
initMock()
initMock(
global?):void
Defined in: packages/renderer/types/provider/provider.d.ts:78
Parameters
global?
any
Returns
void
install()
install(
app):void
Defined in: packages/renderer/types/provider/provider.d.ts:92
Vue 插件安装方法
- 安装所有第三方库插件
- 执行自定义安装函数(如果提供)
- 安装访问适配器
- 提供全局 Provider 实例
- 设计模式下设置错误处理器
- 执行增强函数(如果提供)
Parameters
app
App
Vue 应用实例
Returns
void
load()
load(
project):Promise<void>
Defined in: packages/renderer/types/provider/provider.d.ts:77
加载项目配置并初始化
- 从模块或服务加载项目配置
- 根据运行模式加载依赖或资源
- 初始化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()
protectedtriggerReady():void
Defined in: packages/core/types/models/base.d.ts:4
Returns
void
Inherited from
Base.triggerReady