angular项目 集成 ng zorro和ng alain(mock 和acl权限)学习笔记

这段时间,比较忙,很久没有写博客了。作为后端开发人员,第一次接触angular,以下是个人的学习心得和Demo。

项目创建步骤:

第一步 :创建项目
ng new PacSys --directory “xx-xx-xx-xx-pacSys” --routing
第二步:初始 ng zorro项目
ng add ng-zorro-antd
第三步:安装 ng-zorro包
npm install ng-zorro-antd --save-dev
第四步:替换app.component.html内容为下列标签

第五步 : 创建组件
ng g component components/index – 在app/components 目录下
ng g component login – 在app目录下component 可以简写为c
ng g component index-- 在app目录下
ng g component order – 在app目录下 工单数据
完善各个组件里面的逻辑代码。
第六步:设置路由:app-routing.module.ts

import { NgModule } from '@angular/core';
import { Routes, RouterModule } from '@angular/router';
import {LoginComponent} from "./login/login.component";
import {IndexComponent} from "./index/index.component";const routes: Routes = [{path: '',redirectTo: '/login',pathMatch: 'full'
},{path: 'login',component: LoginComponent},{path: 'index/:username',component: IndexComponent}];@NgModule({imports: [RouterModule.forRoot(routes)],exports: [RouterModule]
})
export class AppRoutingModule { }

第七步:完善登录组件等内容及添加包
npm install rxjs-compat --save
npm install @delon/acl --save
第八步:ng serve 运行项目后前端报错:Angular 报错 Can’t bind to ‘formGroup’ since it isn’t a known property of ‘form’
解决方案:
在app.module.ts 文件里面加入 ReactiveFormsModule
前端报错 :Can’t bind to ‘acl’ since it isn’t a known property of ‘li’. ("lin
在app.module.ts 文件里面加入 DelonACLModule.forRoot()
第九步:模拟登录 安装mock 并在 app.module.ts 配置
安装 @delon/mock
npm install @delon/mock --save-dev

const MOCKMODULE = !environment.production ? [ DelonMockModule.forRoot({ data: MOCKDATA, log: true }) ] : [];
imports: [MOCKMODULE
],

第十步: 配置mock 数据到 app.module.ts

import * as MOCKDATA from './_mock/mock';

第十一步; acl [acl]="{ role: [‘reviewer’, ‘reader’] 权限 过滤未生效
在全局 styles.css加入如下

.acl__hide {display: none;
}

第十二步: 提交代码到gitlab 要关联jira
比如:git commit -m’feat:add login,index,order component RDDEPT-983’

第十三步: jenkins 配置

#!/bin/sh
cd $WORKSPACE/
#npm i -g yarn webpack eslink gulp serve
npm install
npm run build
ssh tomcat@192.168.22.22 "rm -rf /usr/local/apache-tomcat-8/webapps/pacSys/*"
scp -r $WORKSPACE/dist/* tomcat@192.168.22.22:/usr/local/apache-tomcat-8/webapps/pacSyscp package.json dist/
cd dist/
npm publish -registry http://192.168.22.22:1234/repository/npm-repo-hosted/

第十四步:
如果jenkins 配置构建成功,就可以访问该项目了。
http://192.168.22.22:8080/pacSys/#/login

在此项目就已经创建完成了。

项目截图:根据不同用户的权限展示不同的内容

Demo的连接地址:
Demo [link] https://download.csdn.net/download/qq_36244155/10754412
拿到Demo后,用webstone打开,
再npm install 安装完所有包,再ng serve 运行。再访问localhost://4200即可打开页面。
Alt+F12 即可弹出该Terminal

ng serve 启动项目

创建过程中遇到的错误:

1,Angular 报错 Can’t bind to ‘formGroup’ since it isn’t a known property of ‘form’
在使用form表单时,如果用到了form-group与formControlName,需要在app.module.ts中的import引入的不仅仅有FormsModule,还要引入ReactiveFormsModule。如果是懒加载,则按需在各自的module中引入。如下:
2,
找不到或报不存在
可能是 app.module.ts 里面 没有引用组件:AppRoutingModule(app-routing.module.ts)
3,error TS2307: Cannot find module ‘rxjs-compat/Observable’
就安装npm install rxjs-compat --save
4,Can’t bind to ‘acl’ since it isn’t a known property of ‘li’. ("’" [nzMode]="‘horizontal’">
在app.module.ts 配置DelonACLModule.forRoot(),
import { DelonACLModule } from ‘@delon/acl’;
5,如果acl权限 未生效
styles.css 文件中增加如下
.acl__hide {
display: none;
}
6. 项目创建时,加上–routing
(会在app文件中生成app-routing.module.ts配置文件)
7.npm install @delon/mock --save-dev
–save 表示保存到项目的package.json文件里面
-dev 生成在package.json文件里面 的devDependencies里面

"devDependencies": {"@angular-devkit/build-angular": "~0.7.0","@angular/cli": "~6.1.4","@angular/compiler-cli": "^6.1.0","@angular/language-service": "^6.1.0","@delon/mock": "^1.5.0","@types/jasmine": "~2.8.6","@types/jasminewd2": "~2.0.3","@types/node": "~8.9.4"}

常用命令

单元测试输出代码覆盖率的命令是:
ng test --code-coverage
启动命令: ng serve (默认访问端口4200)
打包:ng build
停止项目:ctrl+c

ng zorro 文档
链接: [link] https://ng.ant.design/components/form/zh
链接: [link] https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/README-zh_CN.md
ng alain文档
链接: [link] https://ng-alain.com/docs/getting-started/zh

angular项目 集成ng zorro 和ng alain相关推荐

  1. ngzorro html源码,angular使用NG ZORRO来构建博客展示项目(简单实现展示页面)

    使用 NG ZORRO 在上一篇文章中,我们已经安装了NG ZORRO,并在跟模块中引入了,在子模块中使用还需要再次引入. 编辑layout模块中的header组件 在layout.module.ts ...

  2. angular ng zorro框架日期框无法自适应宽度的解决方法

    如果我们使用ng zorro框架的日期框时,就会发现,日期框的宽度总是固定的,无法像输入框一样自适应父节点<nz-form-control [nzSpan]="12"> ...

  3. angular7中引用ng zorro antd的三种方式

    在新版本的angular中使用新的ng zorro,按照官方文档一步一步来,没有报错,但是也没有反应. 试了一下官方的两种方式,第一种方式如果使用cnpm会报错,第二种方式会没有反应,也是因为使用了c ...

  4. Ng Zorro配置

    Ng Zorro配置 文章目录 Ng Zorro配置 一.app.module里配置 二.引入样式 1.使用全部组件样式 2.引入组件模块 全局安装:npm i ng-zorro-antd g --s ...

  5. [Angular 6] 初学angular,环境全部最新,[ ng serve ] 不能启动,卡在 95% 不动 => 解决方案

    [Angular 6] 初学angular,环境全部最新,[ ng serve ] 不能启动,卡在 95% 不动 => 解决方案 参考文章: (1)[Angular 6] 初学angular,环 ...

  6. NG ZORRO知识点总结

    NG ZORRO的常用属性,包括但不限于,结合代码 <button nz-button [nzType]="'primary'" [nzSize]="'large' ...

  7. 在angular项目中集成海康视频web插件 V1.4.1

    在近期的angular项目中,需要跟海康iSecure Center平台对接,实现监控点视频的实时和录像播放功能. 对接过程并不顺畅. 本来已经通过视频流转http-flv协议,利用flvjs实现了基 ...

  8. Angular 6集成Spring Boot 2,Spring Security,JWT和CORS

    主要内容:Spring Boot 2的基础应用.CORS配置.Actuator监控:Spring Boot集成springfox-swagger,利用Swagger生成JSON API文档,利用Swa ...

  9. 运行Angular项目后自动打开网页

    启动Angular项目时通常输入 ng server命令,执行完之后还需要在浏览器输入localhost:4200,真的是麻烦.只要将命令换成 ng serve --open 然后等着就行了,舒服多了 ...

最新文章

  1. java notifier_Java学习笔记---4.Java的分支循环语句
  2. .bat脚本自动yes_推荐|PyToBI自动标注韵律
  3. NeurIPS 2021 | 寻MixTraining: 一种全新的物体检测训练范式
  4. 【DICOMDIR专题】DICOMDIR基础知识及常见问题汇总
  5. 第26月第13天 hibernate导包
  6. Webservice常用接口大全
  7. Ubuntu 16.04下用Wine运行的软件出现方块的解决思路(应该是兼容现在所有平台的Wine碰到这个的问题)
  8. 【计算机网络】零拷贝之MMAP
  9. import * as x from 'xx' 和 import x from 'xx'
  10. 阿里云对象存储OSS简单使用
  11. python爬虫requests模块
  12. FIDE 全新编译体验,编译速度大幅提升
  13. QQ坦白说之解密教程
  14. Mockoon代理模式
  15. omnipeek flags查询
  16. node.js 史上最详细 (博主持续更新)
  17. 【网友选08感动中国十大动物 猪坚强夺冠(组图)~~】
  18. JDBC实现增删改查的基本步骤
  19. 计算机财务管理模型分析报告,计算机财务管理实验报告1.doc
  20. 能源系统建模:configuring carbon market in GCAM

热门文章

  1. TensorFlow 之 TFRecord
  2. c语言输入中含有非法字符 请重新输入,C语言中对scanf输入非法字符的检查和处理...
  3. Excel教程(2):数据透视表-打印分页-页收尾、水印--函数简介--函数IF/IFERROR-VLookup
  4. C语言如何用于自动化设备,全国高级技工学校电气自动化设备安装与维修专业教材:单片机应用技术(C语言)...
  5. Python 读文件
  6. egret.eui皮肤与组件(2)
  7. 怎么样把网站内链优化与网站外链建设做好呢?
  8. Python之Wsgi
  9. java通用类取名_Java基础第二十天总结——常用类String
  10. Java架构之消息队列 (一):消息队列的概述