在Angular Library Bundle中使用Jsonpath时不起作用

时间:2019-08-13 14:27:57

标签: angular jsonpath angular-library

我有一个正在创建Angular库的项目,该项目作为UMD捆绑软件导入到另一个应用程序中。

我想使用Jsonpath库来解析库中组件之一中的json。当我尝试直接在angular应用程序中使用json路径时,它可以正常工作。但是,如果我尝试在库组件中执行相同的操作,则会收到错误消息

  

“错误TypeError:this.nodes不是函数”

这是我尝试使用它的方式:

import { Component, OnInit } from '@angular/core';
import * as JP from 'jsonpath/jsonpath';

@Component({
  selector: 'nom-test',
  templateUrl: './test.component.html',
  styleUrls: ['./test.component.css']
})
export class TestComponent implements OnInit {

  constructor() { }

  ngOnInit() {
    const t = {id:1};
    const r = JP.query(t, '$..*');
    console.log(r)
  }

}

如果测试组件直接在应用程序中,则此方法有效,但如果组件在库中,则无效。 我尝试使用ng-packagr选项“ umdModuleId”,外部选项,但它们似乎都不起作用。

如果我尝试将jsonpath添加到库的package.json中的bundleDependencies中, 我得到了错误

  

'query'不是由'node_modules \ jsonpath \ jsonpath.js'导出的   引用

我完全不知道可能是什么原因造成的。

0 个答案:

没有答案