首页/新闻资讯/正文详情

Nebular 安装指南:使用 Angular CLI 与手动两种方式完成主题库接入配置

发布时间:2026/9/26 2:48:26 来源:云帆数科 栏目:资讯中心
Nebular 安装指南:使用 Angular CLI 与手动两种方式完成主题库接入配置
前端UI组件【免费下载链接】nebular:boom: Customizable Angular UI Library based on Eva Design System :new_moon_with_face::sparkles:Dark Mode项目地址https://gitcode.com/gh_mirrors/ne/nebular点击查看免费下载Nebular 是一套基于 Eva Design System 的可定制 Angular UI 组件库本指南讲解在其当前仓库nebular/theme17.x中完成安装的两种主流方式通过 Angular Schematics 的ng add一键接入以及在已有 Angular 工程中手动安装依赖、配置模块与样式。读完本文后你将掌握 Nebular 主题模块、图标包、认证与安全模块的完整接入流程并能根据项目情况选择预编译 CSS 或可定制 SCSS 主题方案。安装方式概览Nebular 提供两条接入路径均以“已存在或即将创建的 Angular 应用”为前提方式适用场景关键命令Angular CLI推荐新项目或已有项目快速接入由 Schematics 自动完成依赖、模块、样式与布局骨架配置ng add nebular/theme手动安装已有 Angular 应用希望精确控制每一步的改动npm install --save nebular/theme angular/cdk angular/animations如果你完全没有代码基础建议先参考 Angular CLI 官方文档创建应用如果你想基于 ngx-admin 启动模板起步则可以阅读 基于 Starter Kit (ngx-admin) 安装 一文。本文只讲解如何将 Nebular 模块装入你自己的工程不含 ngx-admin 专属的自定义组件如 Temperature Widget、Dashboard 图表等——若你需要复用这些组件请先按本文完成 Nebular 接入再拷贝所需组件到项目并注册到对应模块中。方式一使用 Angular CLI 接入推荐安装 Angular CLINebular 官方强烈推荐使用angular/cli开发 Angular 应用全局安装命令如下npm install -g angular/cli创建新项目使用 Angular CLI 创建全新工程ng new my-new-project执行 ng add 完成接入Nebular 支持通过 Angular Schematics 完成初始化配置只需一条命令即可完成整个接入流程ng add nebular/theme执行完毕后 Nebular 即可投入使用。从当前仓库的 Schematics 实现ng-add 入口可以看出这条命令背后实际完成的工作远比“加一个依赖”多写入 peer 依赖installMainPeerDependencies会读取项目已有的angular/core、angular/cli版本向package.json写入angular/animations、angular/cdk、nebular/theme、nebular/eva-icons等依赖自动安装通过NodePackageInstallTask触发npm install顺序执行后续 Schematics安装完成后依次运行post-install与setupsetupsetup.ts再链式执行模块注册、主题注册、根组件布局包裹三个步骤。之所以拆成“先安装再配置”是因为后续的setup步骤内部依赖angular/cdk/schematics与schematics/angular工具包必须先安装完成才能运行。ng add 支持的配置选项ng add nebular/theme并非“一键到底”它支持通过交互式提示或命令行参数控制安装行为。可配置项定义在 schema.json选项可选值默认值作用project字符串当前项目名指定要配置的 Angular 项目themedefault/dark/cosmic/corporatedefault要安装的视觉主题customization布尔值true使用可定制 SCSS 主题还是引入预编译 CSSlayout布尔值true是否将根组件模板包裹进nb-layoutanimations布尔值true是否配置 Angular 浏览器动画模块例如直接指定暗色主题并跳过布局包裹ng add nebular/theme --theme dark --layout false安装过程实际修改了什么结合 模块注册实现 与 主题注册实现ng add会对你的工程做如下改动动画模块在根模块导入BrowserAnimationsModule来自angular/platform-browser/animations若项目已显式使用NoopAnimationsModule则跳过并打印警告避免运行时冲突Nebular 模块向根模块导入NbThemeModule.forRoot({ name: 主题名 })、NbLayoutModule与NbEvaIconsModule路由模块若工程尚未导入RouterModule或AppRoutingModule会自动生成app-routing.module.ts并注册主题样式开启customization时生成themes.scss并在styles.scss中注入use themes与nebular/theme/styles/globals关闭时则把node_modules/nebular/theme/styles/prebuilt/theme.css写入angular.json的 styles 数组且会校验避免重复引入其他 Nebular 主题布局骨架layout为true时将AppComponent的模板内联或 HTML 文件均可包裹进nb-layout/nb-layout-header/nb-layout-column/nb-layout-footer结构中见 wrap-in-layout 实现这是 Nebular 组件正常工作的前提。上述行为均有对应测试用例覆盖可参考 ng-add 测试其中验证了themes.scss与styles.scss的期望生成内容。方式二手动安装如果你希望在已有 Angular 应用中逐步、可控地接入 Nebular可按照以下步骤操作。此方式假设你已经创建好了一个 Angular 应用。安装 Nebular 模块npm install --save nebular/theme angular/cdk angular/animations从 nebular/theme 的 package.json 可以看到nebular/theme将angular/animations、angular/common、angular/core、angular/router、angular/cdk与rxjs声明为 peerDependencies因此手动安装时需保证这些包的版本与当前仓库的 17.x 版本声明对应 Angular 21兼容npm install会自动校验并在缺失时给出提示。安装图标包推荐从 Nebular 4.0 起Eva Icons 是官方推荐的 SVG 图标库可一并安装npm install --save eva-icons nebular/eva-iconsnebular/eva-icons模块的用法细节可参考仓库内的 eva-icons README 及 图标组件目录。安装认证与安全模块可选若你的应用需要登录认证与访问控制可额外安装npm install --save nebular/auth nebular/security认证模块的完整概念与安装说明见 Auth 模块简介 与 Auth 安装指南。配置 Nebular在应用根模块app.module.ts中引入主题模块import { NbThemeModule } from nebular/theme; // ... NgModule({ imports: [ // ... // 默认启用 default 主题传入 { name: dark } 可启用暗色主题 NbThemeModule.forRoot(), ], }) export class AppModule {}从 NbThemeModule 实现 可以看出forRoot()的完整签名是static forRoot( nbThemeOptions: NbThemeOptions { name: default }, nbJSThemes?: NbJSThemeOptions[], nbMediaBreakpoints?: NbMediaBreakpoint[], layoutDirection?: NbLayoutDirection, ): ModuleWithProvidersNbThemeModule第一个参数nbThemeOptions控制启用的主题名内置可选值为default、dark、cosmic、corporate该方法同时注册主题服务、断点服务、滚动与标尺服务、方向服务、Spinner、Status 服务以及 Overlay 模块的 providers并把主题选项通过NB_THEME_OPTIONS令牌提供给全局依赖注入forRoot()只应在根模块调用一次子模块中通常无需再次调用。安装样式接下来为工程引入 Nebular 的全局样式。最简单的做法是在angular.json的styles数组中加入预编译主题 CSSstyles: [ node_modules/nebular/theme/styles/prebuilt/default.css ]将default.css换成dark.css即可启用暗色主题。仓库 prebuilt 样式目录 中共有 9 个文件覆盖四个内置主题及其 Custom Properties 变体主题预编译 CSSdefaultdefault.css、default-custom-properties.cssdarkdark.css、dark-custom-properties.csscosmiccosmic.css、cosmic-custom-properties.csscorporatecorporate.css、corporate-custom-properties.css这些文件的发布路径均在 nebular/theme package.json 的 exports 声明 中予以导出。可定制主题SCSS 进阶方案本文描述的是基础样式安装。如果你需要更高级的特性——比如自定义主题变量或运行时在多个主题间切换——建议参考 启用可定制主题 与 多运行时主题 两篇文章。可定制方案要求项目启用 SCSSng add在非 SCSS 工程中启用customization时会直接抛出“Customizable theme requires scss”异常。ng add生成的themes.scss骨架如下forward nebular/theme/styles/theming; use nebular/theme/styles/theming as *; use nebular/theme/styles/themes/default; $nb-themes: nb-register-theme(( // 在这里添加你的自定义变量例如 // color-primary-100: #f2f6ff, // color-primary-500: #3366ff, // color-primary-900: #091c7a, ), default, default);同时styles.scss会被注入全局样式安装代码use themes as *; use nebular/theme/styles/globals as *; include nb-install() { include nb-theme-global(); };nb-install()与nb-theme-global()是 Nebular 样式体系提供的 Sass 入口负责将注册的主题变量安装为组件可用的全局样式是定制主题工作的基础。安装后的下一步完成上述任意一种安装后即可着手创建你的第一个 Nebular 页面可参考 创建 Nebular 页面随后按需选用 主题组件 目录下的各类 UI 组件按钮、卡片、表单、表格、对话框等组件示例可直接参考 playground 示例代码。注意事项与常见问题ngx-admin 自定义组件本指南只解决 Nebular 模块的安装ngx-admin 的自定义组件如温度小部件、仪表盘图表需要按本文完成接入后手动拷贝并注册到你的模块中动画模块冲突若工程已显式使用NoopAnimationsModuleng add不会自动覆盖而会提示手动配置BrowserAnimationsModule主题重复引入ng add与手动配置都会校验angular.json中是否已存在其他nebular/theme/styles/prebuilt样式避免同一主题被重复引入版本兼容手动安装时务必保证angular/cdk、angular/animations等 peer 依赖版本与nebular/theme当前版本声明一致具体以仓库中 package.json 为准。赞分享前端UI组件【免费下载链接】nebular:boom: Customizable Angular UI Library based on Eva Design System :new_moon_with_face::sparkles:Dark Mode项目地址https://gitcode.com/gh_mirrors/ne/nebular点击查看免费下载相关推荐找回QQ空间历史说说GetQzonehistory完整指南找回QQ空间历史说说GetQzonehistory完整指南 开篇·当最老的说说没有了下文 深夜你把QQ空间说说的翻页拉到底发现2015年之后就没了下文——网页爬虫数据分析devin.cursorrules配置详解Cookiecutter vs 手动安装两种方法devin.cursorrules配置详解Cookiecutter vs 手动安装两种方法 想要将你的Cursor编辑器升级为类似Devin的AI助手吗de人工智能AI Agent代码智能体Gel CLI 安装完全指南六种官方安装方式与使用验证Gel CLI 安装完全指南六种官方安装方式与使用验证 本篇技术指南基于 install_table.rst https://link.gitcode.com数据库图数据库关系型数据库上一篇如何快速掌握Video DownloadHelper CoApp新手入门完整指南下一篇WarcraftHelper3分钟让经典魔兽争霸3完美适配现代电脑创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关推荐

离线双击即开、中英双语单文件报告:shuohao-skills 的 report.html 渲染与 I18N 工程实现
离线双击即开、中英双语单文件报告:shuohao-skills 的 report.html 渲染与 I18N 工程实现

离线双击即开、中英双语单文件报告:shuohao-skills 的 report.html 渲染与 I18N 工程实现 【免费下载链接】shuohao-skills AI 短剧制作的 skill 集合:拆角色、排大纲、出场景与道具设定、写剧本、切分镜 | Agent skills for AI short-drama production … · 2026/9/26 2:48:19

深度学习-- RestNet34实现X光肺炎识别
深度学习-- RestNet34实现X光肺炎识别

🍨 本文为🔗365天深度学习训练营中的学习记录博客🍖 原作者:K同学啊 一、前期准备 1. 模块导入与GPU设置​ 2. 导入数据​​​​ 3. 划分数据集​ 二、ResNet34模型 1. 调用模型​ 2. 查看模型详情​​ 3.手动搭建ResNet34 三… · 2026/9/26 2:48:13

Spatial Science博士生必读 12:用TaoToken统一Key打通2026年空间科学AI工具箱,从选题到发表每步都有AI帮你
Spatial Science博士生必读 12:用TaoToken统一Key打通2026年空间科学AI工具箱,从选题到发表每步都有AI帮你

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 2:48:07

DeepSeek向左,Manus往右:TaoToken 统一 Key 下 16 条 AI 产品/组织/个人影响预测的配置骨架
DeepSeek向左,Manus往右:TaoToken 统一 Key 下 16 条 AI 产品/组织/个人影响预测的配置骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 3:26:31

我让 Claude Code 和 Kiro 同台竞技:用 localStorage 开发网页版功德木鱼,最后竟然是它赢了!
我让 Claude Code 和 Kiro 同台竞技:用 localStorage 开发网页版功德木鱼,最后竟然是它赢了!

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 3:26:31

快速上手 Codex CLI:用 TaoToken 统一 Key 打通 settings.json 配置
快速上手 Codex CLI:用 TaoToken 统一 Key 打通 settings.json 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 3:26:31

我整理了市面上常见RAG面试题
我整理了市面上常见RAG面试题

RAG 完整描述标准 RAG 全流程每一步的作用 标准 RAG 分为知识库构建和在线问答两大阶段,完整流程共有六步: 文档加载与清洗:加载 PDF、Word、网页等原始数据,清洗乱码、空行、无效内容,统一文档格式,保证数… · 2026/9/26 3:26:31

VSCode 下用 Code Runner 编译运行 C++:TaoToken 统一 Key 配置与 settings.json 骨架
VSCode 下用 Code Runner 编译运行 C++:TaoToken 统一 Key 配置与 settings.json 骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 3:26:31

Loop Engineering 实战:用 TaoToken 统一 Key 搭建编程智能体循环骨架
Loop Engineering 实战:用 TaoToken 统一 Key 搭建编程智能体循环骨架

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 3:26:25

数据库课后习题答案别硬背:当测试用例集刷,效率翻倍
数据库课后习题答案别硬背:当测试用例集刷,效率翻倍

简介:万常选版《数据库原理与设计》课后习题答案资源,覆盖第2至6章及第9章,适合正在学习关系模型、数据库建模、关系数据理论与模式求精的本科生、自学者作为复习与自测材料。压缩包共7个文件,含3个doc参考答案、2个sql示例脚本、… · 2026/9/26 0:00:21

OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置
OpenClaw 替代品?Hermes Agent 踩坑实录:macOS 飞书接入 TaoToken 配置

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views … · 2026/9/26 0:00:40

向下兼容与向上兼容:接口设计中的兼容性策略与工程实践
向下兼容与向上兼容:接口设计中的兼容性策略与工程实践

一次版本升级事故,是很多团队绕不过去的坎。线上环境里,服务端明明已经上线了新版接口,老的移动端还在照着旧文档传参数。请求一到网关,校验直接拒绝,用户操作失败,客服群炸了锅,开发群里开始互… · 2026/9/26 0:00:46

了解更多?预约专属演示

我们的顾问将为您一对一讲解产品与方案

企业微信二维码