首页 > 解决方案 > Forge-Application BIM 360 查看器下拉选择项目

问题描述

如何在 BIM 360 Viewer forge 应用程序、NodeJS 应用程序中为用户获取所有可用项目的下拉选择。

标签: node.jsautodesk-forgeautodesk-model-derivativeautodesk-bim360

解决方案


您可以在服务器端 Node.js 应用程序中使用 Forge SDK,以使用此端点获取特定 BIM 360“集线器”的所有项目列表:https ://forge.autodesk.com/en/docs/data/ v2/reference/http/hubs-hub_id-projects-GET。Node.js 代码可能如下所示:https ://github.com/petrbroz/forge-hubs-browser-nodejs/blob/develop/services/forge.js#L64-L67 。然后,您的客户端 JavaScript 可以获取此项目列表,并<select>使用它们填充元素。

或者,您也可以直接从客户端检索项目列表。这就是我在这个演示应用程序中所做的:https ://forgeextraderivatives.z6.web.core.windows.net 。我将以下脚本添加到我的 HTML 中:

<script src="https://cdn.jsdelivr.net/npm/forge-server-utils/dist/browser/forge-server-utils.js"></script>

然后,在从服务器端获取访问令牌后,我执行以下操作:

const bim360Client = new forge.BIM360Client({ token: '...' });
async function updateProjectsDropdown() {
    const $projects = $('#projects');
    $projects.empty();
    const projects = await bim360Client.listProjects($('#hubs').val());
    for (const project of projects) {
        $projects.append(`<option value="${project.id}">${project.name}</option>`);
    }
}

推荐阅读