Autodesk Viewer标记扩展 - 无法从源代码

时间:2016-12-12 14:58:12

标签: autodesk autodesk-forge autodesk-viewer

我试图像官方演示一样尝试类似的观看者注释: lvm-react

我阅读官方博客文章并使用Autodesk Extensions github中的文件: http://adndevblog.typepad.com/cloud_and_mobile/2016/04/markup3d-sample-for-view-data-api.html

但是我无法从源代码编译扩展(创建bundle.js)。尝试npm安装,但有很多错误,如:

ERROR in ./src/Viewing.Extension.VisualReport/PieChart/PieChart.js
Module not found: Error: Cannot resolve module 'EventsEmitter' in MY_FILES

ERROR in ./src/Viewing.Extension.StateManager/Viewing.Extension.StateManager.scss
Module parse failed: /MY_PATH/library-javascript-viewer-extensions-master/src/Viewing.Extension.StateManager/Viewing.Extension.StateManager.scss Unexpected token (2:0)
You may need an appropriate loader to handle this file type.

我还使用npm安装了webpack,但没有结果,仍然有很多错误。

1 个答案:

答案 0 :(得分:2)

webpack build production config中缺少一些加载器。它现在已修复,您应该能够构建所有扩展。请使用回购中的最新版本。

在测试扩展程序时,我建议您使用 npm run build-dev 命令,这样生成的扩展文件就不会缩小并启用了源映射,因此您可以在浏览器控制台中轻松调试它们。在构建生产时,您可以使用 npm run build-prod

您还可以从webpack配置中删除各种条目,以仅构建您感兴趣的扩展名,例如:

module.exports = {

    devtool: 'eval-source-map',

    entry: {

      'Viewing.Extension.Markup3D':
        './src/Viewing.Extension.Markup3D/Viewing.Extension.Markup3D.js',
    },

    // ... rest of the config ...

您可能还想在我的配置中更改输出路径,输出在扩展目录之外,直接在项目中使用它们:

output: {
    path: path.join(__dirname, '../../App/dynamic/extensions'),
    filename: "[name]/[name].js",
    libraryTarget: "umd",
    library: "[name]",
    watch: true
  },

除了将扩展文件包含到项目中之外,还应确保在任何扩展脚本之前包含babel polyfill(来自node_modules / babel-polyfill / dist / polyfill.min.js)。

希望有帮助,如果您在使用这些扩展程序时遇到任何进一步的麻烦,请与我们联系。