@listenai/lisa_core
#
Index#
Classes#
Type aliases#
Variables#
Functions- argv
- flags
- getTaskDict
- job
- load
- loadDependence
- loadDependencies
- loadDevDependencies
- loadFile
- loadFileSync
- loadPackageJSON
- loadPreRunTask
- loadPwdConfig
- loadPwdTask
- loadTaskDict
- loadTypescript
- parsePackageJSON
- runner
#
Type aliases#
ConfigFuncƬ ConfigFunc: function
#
Type declaration:▸ (app
: Application): void
Parameters:
Name | Type |
---|---|
app | Application |
#
LogFunctionƬ LogFunction: function
#
Type declaration:▸ (method
: string, message
: any): void
Parameters:
Name | Type |
---|---|
method | string |
message | any |
#
PipelineƬ Pipeline: object
pipeline定义
#
Type declaration:- [ key: string]: PipelineObject
#
TaskObjectƬ TaskObject: ListrTask
#
TaskOptionsƬ TaskOptions: ListrBaseClassOptions‹any, any, "verbose"›
#
VariablesLet
_Execa#
• _Execa: typeof Execa | undefined
Let
_Tasks#
• _Tasks: typeof Listr | undefined
#
fs• fs: "E:/listenai/opensource/lisa-core/src/fs"
Const
minimist#
• minimist: minimist = _minimist
#
project• project: Project = new Project()
项目主路径,默认为命令行运行的当前的目录
#
Functions#
argv▸ argv(argv
: string[], opts?
: _minimist.Opts): ParsedArgs
获取环境变量
Parameters:
Name | Type | Default | Description |
---|---|---|---|
argv | string[] | (lisa.application.argv as string[]) | - |
opts? | _minimist.Opts | - | 设置解析参数 |
Returns: ParsedArgs
#
flags▸ flags(key
: string): (Anonymous function)
仅供typescript代码使用
example
export class CliUx {@flags("project_path")async getProjectPath() {const projectPath = await cli.prompt("请输入项目路径", {default: '.'})return path.resolve(projectPath)} @flags('author')async getAuthor() {const author = await cli.prompt('请输入作者名称', {default: ''}) as stringreturn author} getProjectName(projectPath: string) {return path.basename(projectPath)}}
Parameters:
Name | Type | Description |
---|---|---|
key | string | 方法字段 |
Returns: (Anonymous function)
#
getTaskDict▸ getTaskDict(): object
获取 任务字典
Returns: object
- [ key: string]: any
#
job▸ job(cmdName
: string, task
: TaskObject): void
创建任务
example
job("lisa_core:pre_build", { title: "编译任务1", task: async() => { console.log("a") await fs.remove("./out") fs.project.root = "./out" await fs.project.mkdir("app", "config", "target") }})
Parameters:
Name | Type | Description |
---|---|---|
cmdName | string | 任务名称,必须是类似 build:pre 的名称;请注意,如果任务名称相同,不可知道任务是否会被替换,推荐使用 {包名}:{任务名} 的命名规范 |
task | TaskObject | 任务对象 |
Returns: void
#
load▸ load(): void
Returns: void
#
loadDependence▸ loadDependence(dep
: string): void
加载 单个依赖包
Parameters:
Name | Type |
---|---|
dep | string |
Returns: void
#
loadDependencies▸ loadDependencies(): void
Returns: void
#
loadDevDependencies▸ loadDevDependencies(): void
Returns: void
#
loadFile▸ loadFile(file
: string): void
Parameters:
Name | Type | Description |
---|---|---|
file | string | 加载路径 |
Returns: void
#
loadFileSync▸ loadFileSync(file
: string): void
Parameters:
Name | Type | Description |
---|---|---|
file | string | 同步加载路径 |
Returns: void
#
loadPackageJSON▸ loadPackageJSON(packagePath?
: undefined | string): void
Parameters:
Name | Type |
---|---|
packagePath? | undefined | string |
Returns: void
#
loadPreRunTask▸ loadPreRunTask(): void
Returns: void
#
loadPwdConfig▸ loadPwdConfig(configPath?
: undefined | string): void
加载 config.[js|ts]
Parameters:
Name | Type | Description |
---|---|---|
configPath? | undefined | string | config地址,默认为packge.json中配置的地址,如果没有配置,读取项目中config.js |
Returns: void
#
loadPwdTask▸ loadPwdTask(taskPath?
: undefined | string): void
加载 task.[js|ts]
Parameters:
Name | Type | Description |
---|---|---|
taskPath? | undefined | string | task地址,默认为packge.json中配置的地址,如果没有配置,读取项目中 task.js |
Returns: void
#
loadTaskDict▸ loadTaskDict(): void
加载 任务字典
Returns: void
#
loadTypescript▸ loadTypescript(): void
Returns: void
#
parsePackageJSON▸ parsePackageJSON(packagePath?
: undefined | string): any
Parameters:
Name | Type |
---|---|
packagePath? | undefined | string |
Returns: any
#
runner▸ runner(job_list?
: undefined | string, ctx?
: undefined | object, verbose?
: undefined | false | true): Promise‹unknown›
Parameters:
Name | Type |
---|---|
job_list? | undefined | string |
ctx? | undefined | object |
verbose? | undefined | false | true |
Returns: Promise‹unknown›