fuse.js作为aurelia应用程序中的依赖项

时间:2017-09-25 21:17:48

标签: node.js aurelia fuse.js

我一直试图将fuse.js添加为基于aurelia的应用程序,但没有成功。

使用au工具初始化应用,并使用TypeScript作为主要语言。

aurelia_project/aurelia.json中,我尝试在build.bundles[vendor-bundle].dependencies下添加以下格式的依赖项:

"fuse.js"

{
  "name": "fuse.js",
  "path": "../node_modules/fuse.js/dist/fuse"
}

{
  "name": "fuse.js",
  "path": "../node_modules/fuse.js/dist/",
  "main": "fuse"
}

两者都没有在运行时向我提供该库(undefined导入import * as Fuse from 'fuse.js';时,这两个首先在构建时给了我错误。

如何将fuse.js作为依赖添加到aurelia应用程序?

2 个答案:

答案 0 :(得分:1)

我在我的app中使用fuse.js作为值转换器,我的结构是webpack和dotnet核心,

  1. npm install fuse.js --save
  2. 在我的webpack.config.vendor文件的供应商部分添加fuse.js
  3. npm install @ types / fuse
  4. 我创建了一个值转换器,如:

    import { FuseOptions } from 'fuse.js';
    import * as Fuse from 'fuse.js';
    
    export class FuseValueConverter {
    
    toView(value: Array<any>, options: FuseOptions, criteria: string) {
       console.log(value);
    
       if (!options || !criteria)
           return value || [];
    
       const fuse = new Fuse(value, options);
    
       return fuse.search(criteria);
       }
    }
    
  5. 然后我在我的视图模型中就像它在Aurelia

    中的任何其他值转换器一样

答案 1 :(得分:0)

导入时aurelia不是不使用扩展名(在你的情况下为.js)吗? 您的json文件格式也不正确。