3

我无法在我的 Angular 应用程序 ( https://docs.bokeh.org/en/latest/docs/dev_guide/bokehjs.html ) 中使用 BokehJS 库。当我尝试从我的应用程序调用库时,我会收到以下错误:

ERROR in ./node_modules/@bokeh/bokehjs/build/js/lib/index.js 3:9
Module parse failed: Unexpected token (3:9)
You may need an appropriate loader to handle this file type, currently no loaders are configured to process this file. See https://webpack.js.org/concepts#loaders
| export { version } from "./version";
| export { index } from "./embed";
> export * as embed from "./embed";
| export * as protocol from "./protocol";
| export * as _testing from "./testing";

这是在“新”计算机上重现问题的详细分步方法(我在两台不同的机器上尝试过,它们最后都得到完全相同的错误):

  • 安装 nodejs:https ://nodejs.org/en/
  • 安装 angular-cli:npm install -g @angular/cli
  • 在当前目录中初始化一个新的 Angular 项目:ng new angular10BokehJSexample
  • 进入新项目目录:cd angular10BokehJSexample
  • (可选)检查示例 Angular 应用程序是否有效:npm start并在 URL http://localhost:4200 上打开浏览器
  • 安装 BokehJS:npm install @bokeh/bokehjs
  • 打开您喜欢的文本编辑器并更改文件src/app/app.module.ts。在顶部添加以下行和其他导入:import * as Bokeh from '@bokeh/bokehjs'
  • (可选)如果您在此阶段启动服务器,它应该仍然可以正常工作,这意味着可以成功导入 BokehJS(旧版本的 Angular 不是这种情况)
  • 仍在文件src/app/app.module.ts中,更改文件末尾的类声明,使其看起来像这样:
export class AppModule {

  private testBokeh(){
    var item = JSON.parse("just a test");
    Bokeh.embed.embed_item(item);
  }

}

(注意:这只是一个存根,代码不起作用。我已经整理了一个应该可以工作的更复杂的代码,但这足以重现我的问题)

  • 再次运行npm start,由于这个问题开头提到的错误,它无法编译。

关于我做错了什么的任何想法?我不是前端开发人员,所以我绝对不在我的舒适区。任何帮助将不胜感激。

4

0 回答 0