当前位置: 首页 > news >正文

广西哪家公司做网站的建设人行官方网站下载

广西哪家公司做网站的,建设人行官方网站下载,网上书店电子商务网站建设,网页设计制作规范1 新版路由守卫由于canActivate已被废弃,采用函数函数,但其参数中无法像类一样进行路由对象注入,如何实现路由首位中的页面跳转? import { CanActivateFn,Router,ActivatedRouteSnapshot, RouterStateSnapshot,} from angular/ro…

1 新版路由守卫由于canActivate已被废弃,采用函数函数,但其参数中无法像类一样进行路由对象注入,如何实现路由首位中的页面跳转?

import { CanActivateFn,Router,ActivatedRouteSnapshot, RouterStateSnapshot,} from '@angular/router';
import{inject} from "@angular/core"export const authorGuard: CanActivateFn = (route:ActivatedRouteSnapshot, state:RouterStateSnapshot) => {if(localStorage.getItem("token")){}else{// const router = route?._routerState._root.injector.get(Router) as Router; // 获取Router实例const router =inject(Router); // 通过参数注入 Router 对象router.navigate(['/login']); // 导航到登录页面// this.router.navigate(['/login']); // 导航到登录页面return false; // 阻止导航到目标路由}return true;
};

这里采用inject强制注入得到router对象。这样就可以实现路由的跳转

2 对于路由懒加载方式,需要在app.module.ts和当前module.ts中同时引入相关模块。否则会报错。比如

'nz-form-control' is not a known element:

原因就是NzFormModule只在app.moudule.tsz中引入了,但是却没有在当前页面的组件的module中引入导致一直报错

3 nozzor-antd中的nz-space组件要想生效,必须加入*nzSpaceItem

4 模板中遍历的数据如何获取当前对象的属性值,如下:

constructor(private fb:FormBuilder){this.validateForm=this.fb.group({storename:[''],tableSize:this.fb.group({toggle:['true'],groupSize:this.fb.array([this.fb.group({cate:['indoor'],title_en:[''],title_zh:[''],}),this.fb.group({cate:['outdoor'],title_en:[''],title_zh:[''],}),]),}),})}<form  class="store_generate_form" nz-form [formGroup]="validateForm" (ngSubmit)="submitForm()"><nz-form-item><nz-form-label [nzSpan]="8" nzFor="storename">店铺名称</nz-form-label><nz-form-control [nzSpan]="16"><input nz-input name="storename" type="storename" formControlName="storename"></nz-form-control></nz-form-item ><div><nz-form-item><nz-tab [nzTitle]="group.value.cate" *ngFor="let group of groupSize.controls; let i = index" [formGroupName]="i"></nz-form-item>   </div>    

这里的tab标签页的tab的名称要根据cate字段来读取。这里的方式是通过[nzTitle]="group.value.cate"来获取的。对于每一个control而言,其下都有一个value属性,通过value属性就可以获取到原始的json数据对象

6 zorro中如何实现tabs标签页添加额外内容?

  <nz-tabset   nzType="card" formArrayName="groupSize" [nzTabBarExtraContent]="extraContent" (nzAdd)="addTab()"><ng-template #extraContent><button nz-button nzType="dashed">Add</button></ng-template><nz-tab nzIcon="book" ><ng-template nz-tab>tab中的内容xxxx</ng-template></nz-tab><ng-container *ngTemplateOutlet="extraContent"></ng-container></nz-tabset>

通过定义tabExtraContent模板引用,其中包含自定义的文本内容。然后,在nz-tabset内部使用<ng-container>元素,并使用*ngTemplateOutlet指令将tabExtraContent引用的内容渲染在页面指定位置。

通过这种方式,你可以将默认的"+"样式替换为自定义的文本("Add"按钮),并在页面中正确渲染。

7 给formArray对象添加group数据的时候,切记每一项的字段名称要对应,否则会报错

RROR Error: Cannot find control with path: 'tableSize -> groupSize -> 0 -> tableSize -> 2 -> minPerson'

例如:

<nz-tab nzIcon="book" [nzTitle]="group.value.cate" *ngFor="let group of groupSize.controls; let i = index" [formGroupName]="i"><div formArrayName="tableSize">  <ng-template nz-tab><nz-form-item *ngFor="let table of tableSizeControls(i)?.['controls']; let j = index" [formGroupName]="j"><nz-form-control><div class="danamic_group"> <div class="danamic_group_item"><nz-input-group nzAddOnBefore="Key" ><input nz-input type="text" nz-input  formControlName="size"/></nz-input-group></div><div class="danamic_group_item" ><nz-input-group nzAddOnBefore="EN" ><input nz-input type="text" nz-input  formControlName="desc_en"/></nz-input-group></div><div class="danamic_group_item" ><nz-input-group nzAddOnBefore="CH"><input nz-input  type="text" nz-input  formControlName="desc_zh"/></nz-input-group></div><div class="danamic_group_item" ><nz-input-group nzAddOnBefore="number"><input nz-input type="text" nz-input  formControlName="number"/></nz-input-group></div><div class="danamic_group_item" ><nz-input-group ><nz-input-number [nzMin]="1" type="text" nz-input  formControlName="minPerson"/></nz-input-group></div><div class="danamic_group_item"><nz-input-group ><nz-input-number [nzMin]="1" type="text" nz-input  formControlName="maxPerson"/></nz-input-group></div></div></nz-form-control></nz-form-item>  </ng-template>                  </div></nz-tab>

注意在ngfor中最后两个formControlName分别是minPerson和maxPerson,接下来在js文件中给formArray添加一条新的数据

get groupSize(): FormArray {  return this.validateForm.get('tableSize.groupSize') as FormArray;}tableSizeControls(index:number): FormArray {let list=this.validateForm.get('tableSize.groupSize') as FormArray;let lastlist=list.controls[index].get('tableSize') as FormArray ||[]return lastlist}add(){//先找到是indoor还是outdoor的tablsesizeconsole.log("this.activeTab",this.actvieTabIndex)let newdata=this.fb.group({size: [""],desc_en:[""],desc_zh: [""],number:[''],preTitle: [""],maxPerson: [],})let curTableSizeArr=this.tableSizeControls(this.actvieTabIndex) as FormArrayconsole.log("curTableSizeArr",curTableSizeArr)curTableSizeArr.push(newdata)console.log("curTableSizeArr",curTableSizeArr)}remove(){   let curTableSizeArr=this.tableSizeControls(this.actvieTabIndex) as FormArraycurTableSizeArr.removeAt(curTableSizeArr.length-1)}

注意我们在add函数中定义的数据newdata其中的字段,没有minPerson,此时就会报错。此时需要我们核实字段。我们更改perTtile为minPerson以后。报错消失

http://www.yayakq.cn/news/603575/

相关文章:

  • 网站里的个人中心下拉列表怎么做优秀北京网站建设
  • 做网站不给提供ftp企业申请域名
  • ps做网站的时候分辨率是wordpress函数调用函数
  • 永州网站建设收费情况国外ip代理
  • 做三国的网站宁波seo整站优化
  • 在自己的网站里做讲课视频河南招投标信息网
  • 东营微信网站制作容桂销售型网站建设
  • 象刀设计网站织梦网站设计
  • 南充做网站公司外贸平台运营模式
  • 建设商城网站wordpress显示缩略图 摘要
  • 网站宣传册怎么做wordpress做管理网站
  • 工控主机做网站服务器网络营销方式的使用方法
  • 南京网seo技术推广培训
  • 启东做网站惠州做网站的公司有哪些
  • 南京设计网页公司柳州网站seo网站s
  • 网站怎样获得利润公司设立网址
  • 企业如何进行网站备案微信商城系统免费
  • 企业网站运营方案分销渠道管理
  • net域名大网站海口手机网站制作
  • 旅游政务网站建设方案超级商城
  • 网站做支付宝接口wordpress 360 google
  • 网站设计客户案例中企动力销售待遇
  • 绵阳个人网站建设重庆微信网站制作
  • 自己建设网站引流域名服务器如何申请
  • 东莞网站建设部落吉林做网站
  • 权威的电商网站建设泛微oa办公系统教程
  • 如何访问服务器上的网站wordpress如何编辑页面代码
  • 网站制作建星巴克网站建设方案
  • 青岛免费建站网络广告推广怎么做
  • 广州企业如何建网站wordpress模板能修改吗