如何添加扩展名

时间:2018-01-19 19:43:26

标签: autodesk-viewer

我使用Forge Viewer相当新,并且已经创建了我的Basic Application

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

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

现在我要加载扩展程序。我无法理解它。任何帮助将不胜感激。

对不起基本问题!

1 个答案:

答案 0 :(得分:0)

这个扩展名是用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'
    ]
  },