如何将ngx-restangular添加到angular-seed?

Łuk*_*ski 10 javascript angular-seed webpack angular

我有一个骨架应用程序构建与mgechev/angular-seed2muchcoffeecom/ngx-restangular.我想整合它们,但我找不到解决方法如何做到这一点.

在我成功添加几个软件包之前,project.config.ts只需遵循angular-seed文档.

这是一个工作正常的配置:

...
  # tools/config/project.config.ts 

  let additionalPackages: ExtendPackages[];
  additionalPackages = [ {
      name: 'angular2-jwt',
      path: 'node_modules/angular2-jwt',
      packageMeta: {
          defaultExtension: 'js',
      }
  }, {
      name: 'ngx-progressbar',
      path: 'node_modules/ngx-progressbar/bundles/ngx-progressbar.umd.js',
  }, {
      name: 'ng2-charts',
      path: 'node_modules/ng2-charts/bundles/ng2-charts.umd.min.js'
  }, {
      name:'ngx-bootstrap',
      path:'node_modules/ngx-bootstrap/bundles/ngx-bootstrap.umd.min.js'
  }, {
      name:'ngx-bootstrap/*',
      path:'node_modules/ngx-bootstrap/bundles/ngx-bootstrap.umd.min.js'
  }, {
      name:'ng2-select-compat',
      path:'node_modules/ng2-select-compat/bundles/ng2-select-compat.umd.min.js'
  }, {
      name:'ngx-avatar',
      path:'node_modules/ngx-avatar/ngx-avatar.umd.js'
  }];
...
Run Code Online (Sandbox Code Playgroud)

但是当我试图添加ngx-restangular:

...
# tools/config/project.config.ts 

const additionalPackages: ExtendPackages[] = [
    {
        name: 'ngx-restangular',
        path: 'node_modules/ngx-restangular/dist/esm/src/',
        packageMeta: {
            defaultExtension: 'js',
            main: './index.js',
        }
    }];
...
Run Code Online (Sandbox Code Playgroud)

应用程序抛出错误:

(index):60 SyntaxError: Unexpected token < at eval (<anonymous>)

在浏览器网络选项卡中,我可以看到ngx-restangular正在加载文件:

  • index.js
  • NGX-restangular.module.js
  • NGX-restangular.js
  • NGX-restangular-http.js
  • NGX-restangular.config.js
  • NGX-restangular-config.factory.js
  • NGX-restangular-helper.js

链接到Github存储库.要在本地环境中运行它,请简单地克隆/ fork和npm install && npm start

链接配置文件project.config.ts

Sha*_*neG 2

从这个来看:

错误:语法错误:意外的标记<

它似乎试图解析 html 404 响应。它很可能试图访问它无法找到的文件。我发现您正在使用 .umd.js。您的配置文件中的配置是否正确?像这样的东西:

additionalPackages.forEach(function (pkgName) {
 packages['@angular/' + pkgName] = { main: 'bundle/'+ pkgName + '.umd.js', defaultExtension: 'js' };
}
Run Code Online (Sandbox Code Playgroud)

我在这里传递的链接也许也有一些帮助。希望这可以帮助!