NPM包:提供资产/图像包

时间:2017-11-15 08:42:01

标签: angular npm

我创建了一个(angular2)npm包并将其上传到我的(私有)注册表。

组件本身非常简单,应该显示一个图标。请在此处查看模板:

<span
  [class]="'icon icon-' + key"
  [inlineSVG]="'./assets/icons.svg#' + key"
  aria-hidden="true"
></span>

正如[inlineSVG]中的路径所示,我想用包裹传递图标。所以我将它们放入./assets文件夹。

但每次我发布包并将其导入我的应用程序时,我都会得到一个404文件找不到该文件: enter image description here

我用gulp构建我的包。如果需要,我也可以发布我的gulpfile。

现在我的问题:通常是否可以在npm包中提供资产(图像)?

非常感谢任何帮助:)

1 个答案:

答案 0 :(得分:2)

技术上没有你不能,因为你可以上传资产,但实际路径会发生变化。您的资产甚至不在服务器中提供,因为它们位于node_modules文件夹中。

您可以做的是在css中导入内联的svgs。 https://github.com/davidkpiano/sass-svg

或以其他方式包含图像的base64 uri。