【问题标题】:Forge Viewer toolbar not display after leave edit modeForge Viewer 工具栏在离开编辑模式后不显示
【发布时间】:2021-02-10 01:39:43
【问题描述】:

我使用此示例中的代码作为指导:

https://forge-rcdb.autodesk.io/configurator?id=598d7ec14cabf2c1f4dec948

源代码在此处可用,但显然代码与示例不同:

https://github.com/Autodesk-Forge/forge-rcdb.nodejs/tree/89e2e0af1d87e3b948cb66bc88f54140c6e8a0e8/src/client/components/Viewer/Extensions/Dynamic/Viewing.Extension.Markup2D

当我点击“关闭”按钮关闭面板时,我想显示工具栏并离开编辑模式/查看模式,但我错过了一些东西。 我就是这样做的:

        on('click', '[data-panel-action="finish"]', function (event) {
            event.preventDefault();
            // hide the panel when click button Close
            self.setVisible(false);
        })

它触发engageEditMode函数,将值false传递给启用

        panelProto.engageEditMode = function (enabled) {
        var markupsCore = this.markupsCore
        if (enabled) {
            markupsCore.enterEditMode();
            this.selectDefaultAnnotation();
        } else {
            //Should display the toolbar here but I don't know how.
            markupsCore.leaveEditMode();
        }
    }

我可以在我的 HTML 上看到工具栏,但所有节点都显示;没有,我的最后一个资源是获取它们并更改要显示的样式;块什么的,但我知道查看器有一些东西会触发工具栏再次加载。

【问题讨论】:

    标签: javascript jquery pdf autodesk-forge


    【解决方案1】:

    我只是仔细检查了该行为,您是正确的 - 只需调用 markupsCore.leaveEditMode 不会带回工具栏。为了重新启用工具栏,您还必须“隐藏”标记覆盖,因此您的 engageEditMode 函数应如下所示:

    panelProto.engageEditMode = function (enabled) {
        const markupsCore = this.markupsCore;
        if (enabled) {
            markupsCore.enterEditMode();
            this.selectDefaultAnnotation();
        } else {
            // Should display the toolbar here but I don't know how.
            markupsCore.leaveEditMode();
            markupsCore.hide();
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2019-09-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-06-16
      • 1970-01-01
      • 1970-01-01
      • 2019-11-15
      相关资源
      最近更新 更多