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

问题描述 投票:10回答:1

我有一个使用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'
  }];
...

但是当我试图添加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',
        }
    }];
...

应用程序抛出错误:

(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

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

Link配置文件project.config.ts

javascript angular webpack angular-seed
1个回答
2
投票

从这看:

Error: SyntaxError: Unexpected token <

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.