获取项目管理器下所有的项目对象(不包含已关闭项目)

    参数说明

    返回值

    示例

    getWorkspaceFolder

    从HBuilderX 2.7.12及以上版本开始支持

    获取某个文件所在的项目

    参数说明

    参数名称 参数类型 描述
    uri String或Uri 文件绝对路径或者文件Uri

    返回值

    返回类型 描述
    Promise<> 文件所在的项目

    示例

    1. var wsPromise = hx.workspace.getWorkspaceFolder("%fsPath%");
    2. wsPromise.then(function(wsFolder) {
    3. console.log("文件所在项目:",wsFolder.name);
    4. });

    openTextDocument

    参数说明

    参数名称 参数类型 描述
    uri String或Uri 文档地址

    返回值

    返回类型 描述
    Promise<> 返回打开的文档

    示例

    1. var documentPromise = hx.workspace.openTextDocument("foo/bar.js");
    2. console.log("打开了文档:",document.fileName);
    3. });

    从HBuilderX 2.7.10及以上版本开始支持

    全局配置改变事件,比如”editor.fontSize”改变,或者通过插件扩展的配置项改变。

    参数说明

    参数名称 参数类型 描述
    listener Function(ConfigurationChangeEvent) 配置修改事件回调

    返回值

    返回类型 描述
    该事件回调的销毁器,可将该对象放置到插件的context.subscriptions数组内,插件卸载时,将会自动注销该事件回调

    示例

    onDidChangeWorkspaceFolders

    从HBuilderX 2.7.10及以上版本开始支持

    项目管理器内的项目新增或者移除时产生的事件

    参数说明

    返回值

    返回类型 描述
    Disposable 该事件回调的销毁器,可将该对象放置到插件的context.subscriptions数组内,插件卸载时,将会自动注销该事件回调

    示例

    1. if(event.added){
    2. event.added.forEach(item=>console.log("新增了项目:",item.name));
    3. }
    4. if(event.removed){
    5. event.removed.forEach(item=>console.log("移除了项目:",item.name));
    6. }
    7. });

    onWillSaveTextDocument

    文档即将要保存的事件,注意该事件是同步调用,会阻塞用户界面,为了避免长时间阻塞界面,目前设置了超时机制,超时时间为2s。

    参数说明

    参数名称 参数类型 描述
    listener Function() 事件回调

    返回值

    返回类型 描述
    Disposable 该事件回调的销毁器,可将该对象放置到插件的context.subscriptions数组内,插件卸载时,将会自动注销该事件回调

    示例

    1. let willSaveTextDocumentEventDispose = hx.workspace.onWillSaveTextDocument(function(event){
    2. let document = event.document;
    3. //do something with document.
    4. });

    文档被修改时的事件

    参数说明

    参数名称 参数类型 描述
    listener Function() 事件回调

    返回值

    返回类型 描述
    Disposable 该事件回调的销毁器,可将该对象放置到插件的context.subscriptions数组内,插件卸载时,将会自动注销该事件回调

    示例

    onDidSaveTextDocument

    文档被保存时的事件

    参数说明

    参数名称 参数类型 描述
    listener Function() 事件回调

    返回值

    示例

    1. let onDidSaveTextDocumentEventDispose = hx.workspace.onDidSaveTextDocument(function(document){
    2. //do something with document.
    3. });

    onDidOpenTextDocument

    从HBuilderX 2.7.6及以上版本开始支持

    文档打开时的事件

    参数说明

    参数名称 参数类型 描述
    listener Function(TextDocument) 事件回调

    返回值

    返回类型 描述
    该事件回调的销毁器,可将该对象放置到插件的context.subscriptions数组内,插件卸载时,将会自动注销该事件回调

    示例

    1. let onDidOpenTextDocumentEventDispose = hx.workspace.onDidOpenTextDocument(function(document){
    2. //do something with document.
    3. });
    4. context.subscriptions.push(onDidOpenTextDocumentEventDispose);

    根据指定的WorkspaceEdit对象编辑文档。WorkspaceEdit对象内要设定被修改文档的uri和要执行修改的TextEdit操作对象。

    参数说明

    参数名称 参数类型 描述
    edit WorkspaceEdit 文档编辑操作

    返回值

    返回类型 描述
    Promise<void> Promise

    示例

    getConfiguration

    参数说明

    参数名称 参数类型 描述
    section String 配置项分类名称

    返回值

    返回类型 描述
    返回配置

    示例

    1. let config = hx.workspace.getConfiguration()
    2. let fontSize = config.get("editor.fontSize");
    3. //或者也可以这样