Angular 2: 如何在运行时自动引入 normalize.css 文件?

发布于 2022-09-03 09:42:09 字数 1005 浏览 14 评论 0

最近学习 Angular 2 的时候发现 HTML 5 的通病 body margin:8px 依然存在,就像引入 normalize.css 丢弃这些不需要的样式。

传统的方式是直接引入 .css 文件,如:<link rel="stylesheet" href="node_modules/normalize.css/normalize.css" /> ,但是我现在想让 Angular 通过 import 模块的方式自动为 index.html 引入 normalize.css 样式表。

我先是按照之前引入 Material 2 的方式:

// angular-cli-build.js

module.exports = function(defaults) {
  return new Angular2App(defaults, {
    vendorNpmFiles: [
      'normalize-path/index.js',
    ]
  });
};
// system-config.ts 

const map: any = {
  'normalize': 'vendor/normalize-path',
};

/** User packages configuration. */
const packages: any = {
  'normalize': {main: 'index.js'},
};
// app.component.ts

import { normalize } from 'normalize-path';

这时编辑器会提示:

Cannot find module 'normalize-path'.

并且编译也不通过,也许我的出发点是错的。

我尝试去 stackoverflow 寻找答案但是没有找到,Google 也没找到相关问题的博文或讨论。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

花伊自在美 2022-09-10 09:42:10

建议使用angular-cli来开发
.angular-cli.json中配置:

"styles": [
        "styles.css",
        "../node_modules/normalize.css/normalize.css"
      ]
一杆小烟枪 2022-09-10 09:42:09

oc.lazyLoad试试

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文