【问题标题】:How to add an extension如何添加扩展
【发布时间】:2018-01-21 01:05:46
【问题描述】:

我是使用 Forge 查看器的新手,并开始创建我的 Basic Application

现在,我想尝试添加这个extension。我做了一些搜索并将其添加到我的 HTML:

forge.run
(
    // divId
    'ForgeViewerContainer',
    // config
    {
        extensions:[
            './Viewer.Skybox'
            'Viewing.Extension.Showcase'
        ]
    },

现在我想加载扩展。我不能完全掌握它。任何帮助将不胜感激。

对不起,这个基本问题!

【问题讨论】:

    标签: autodesk-viewer


    【解决方案1】:

    这个扩展是用 ES6 编写的,所以很遗憾,您不能直接在 html 中引用脚本并将其加载到查看器中,它需要一个转译步骤才能将其转换为 ES5。您需要了解一些有关现代 Web 开发工具的概念,例如 BabelWebpack

    另外一种快速测试该代码的方法是使用我的React Forge boiler,它已经使用所有这些工具进行了设置,并且您只需执行最少的设置步骤。

    如果目前这对您来说太多新东西,这里有一个与 ES5 兼容的扩展,您可以简单地将其放入 .js 文件并从您的 html 中引用,这将适用于您在问题中使用的方法:

    (function(){
    
      'use strict';
    
      function BasicExtension(viewer, options) {
    
        Autodesk.Viewing.Extension.call(this, viewer, options)
      }
    
      BasicExtension.prototype = Object.create(Autodesk.Viewing.Extension.prototype)
      BasicExtension.prototype.constructor = BasicExtension
    
      var proto = BasicExtension.prototype
    
      proto.load = function () {
    
        console.log('Basic Extension loaded!')
    
        return true
      }
    
      proto.unload = function () {
    
        console.log('Basic Extension unloaded!')
    
        return true
      }
    
      proto.sayHello = function (name) {
    
        console.log('Hi ' + name + '!')
    
        return true
      }
    
      Autodesk.Viewing.theExtensionManager.registerExtension(
        'Basic.Extension.Id',
        BasicExtension)
    })()
    

    然后在您的查看器引导代码中:

    forge.run
    (
      // divId
      'ForgeViewerContainer',
      // config
      {
        extensions:[
          'Basic.Extension.Id'
        ]
      },
    

    【讨论】:

    • 太棒了!谢谢。我将从 ES5 代码开始,然后从那里开始执行步骤
    猜你喜欢
    • 2018-07-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多