- 博客(44)
- 收藏
- 关注
原创 Angular API exportAs
官网对exportAs API 只有这段描述,那么exportAs 怎么用呢?有两种情况,一种是组件或者dom元素上的使用,一种是指令上的使用。在上面的例子里,myForm是一个指向(应用于表单的)ngForm指令的引用。但是上述例子中没有任何属性叫ngForm的,怎么回事?上述代码是说,指令将应用于任何没有ngNoForm和formGroup属性的form表单元素之上。因此,ngForm指令将自动应用于我的form元素之上。
2023-05-22 22:38:09
491
原创 使用attr(‘value‘, xxx) 和val(xxx) 修改input 元素value
使用attr(‘value’, xxx) 和 val(xxx) 修改input 元素value
2023-03-08 22:20:29
695
原创 chrome NET::ERR_CERT_INVALID 使用thisisunsafe 解决浏览器发生了什么
chrome NET::ERR_CERT_INVALID 使用thisisunsafe 解决浏览器发生了什么
2022-08-02 14:05:05
670
原创 【疑问】最终推荐的loose pattern 如果依赖module 没有加载完毕,行为如何,是否报错
代码】【疑问】最终推荐的loosepattern如果依赖module没有加载完毕,行为如何,是否报错。
2022-07-28 11:07:28
329
原创 When Observable completes without emitting, toPromise() will successfully resolve with undefined.
When Observable completes without emitting, toPromise() will successfully resolve with undefined.
2022-06-10 14:21:55
152
原创 source observable 发生错误之后会直接进入到catchError operator 而不是按照pipe里面的顺序处理之后再进入catchError
catchError 使用笔记
2022-06-08 15:06:46
162
原创 【Question】rxjs/operator takeWhile vs takeUntil
讨论takeWhile 和 takeUntil 使用场景,求解为什么有些场景下takeWhile 失效
2022-06-07 21:49:41
169
原创 【Question】为什么angular component 使用内置的pipe 需要注入
内置pipe 在component中使用为何需要再次注入
2022-06-06 14:28:15
190
原创 【未解决】angular nebular toastrService.show can‘t trigger
问题解决:待排查问题描述:想要做一个全局拦截器,用来针对所有出错的http 请求,通知用户出错且显示出错提示。主要代码如下,只要错误是401,弹框不能成功触发。if (error?.status === 401) { this.toastrService.show(message, title); // 期望有弹框提示,但是没有 this.router.navigate(['/login']);} else if (error?.status >= 500) { this.to
2022-05-25 15:03:04
159
原创 angular http interceptor 使用笔记
interceptor 在app.modulte.ts 中的provides中,...providers: [ { provide: HTTP_INTERCEPTORS, useClass: CustomizeInterceptor, multi: true}, ],....interceptor 内容,...@Injectable()export class CustomizeInterceptor implements HttpInterceptor { constru
2022-05-24 22:30:36
349
原创 【Question】what‘s the scenario of aliasing a class interface
官网的这部分内容理解不了什么意思,先放在这里!!!Aliasing a class interfaceGenerally, writing variations of the same parent alias provider uses forwardRef as follows.# dependency-injection-in-action/src/app/parent-finder.component.tsproviders: [{ provide: Parent, useExisting
2022-05-23 16:44:13
190
原创 angular library执行ng build libName 时报错:ERROR: Unable to write a reference to SpaceComponent in ...
问题解决:对于monorepo 情况下不能使用ng build <libName>, 应该使用ngx ngc -p projects/<libName>/tsconfig.lib.json, 执行成功后可以在outDir下看到生成的library 编译之后的文件。问题描述:本地是一个monorepo 的项目,其中有一个组件需要共享,所以想到了angular library 方式,但是library 里面又使用了公用的资源shared.module,这些资源是在这个library
2022-05-05 21:52:46
321
原创 angular empty patch can not redirect correctly
问题解决通过调换app.module.ts 中import 的 UsersModule.forRoot()和AppRoutingModule顺序解决问题。原因是angular 的路由一旦匹配到路径将不再继续往下匹配。UsersModule 提供了UserService, 期望是一个单例,所以在module中提供了一个forRoot 方法, 同时在Angular官网的Router tutorial: tour of heroes 中看到app-routing.module.ts 最好在最后面引入,因为对于急
2022-05-05 21:50:44
140
原创 ng test 运行报错SassError: Can‘t find stylesheet to import, 导致case 一个都没有执行
问题解决在angular.json 中test target中也配置和build target 一样的stylePreprocessorOptions.includePaths , 问题解决。在调查此问题的时候发现很多回答需要配置karma.config.js 在里面加files 和 preprocessors ,从而引入样式文件和预处理引擎,此种都是不必要的。问题描述ng start, ng build 项目都可以正常运行,但是执行ng test 就会报错,从而导致case不运行,报错信息如下:
2022-04-22 13:27:27
15248
原创 angular10 ngSumit 绑定的回调函数如何被触发
问题原因typebutton 的类型。可选值:submit: 此按钮将表单数据提交给服务器。如果未指定属性,或者属性动态更改为空值或无效值,则此值为默认值。reset: 此按钮重置所有组件为初始值。button: 此按钮没有默认行为。它可以有与元素事件相关的客户端脚本,当事件出现时可触发。menu: 此按钮打开一个由指定menu元素进行定义的弹出菜单。也就是说不指定button元素不指定type 类型,默认是submit 类型。问题描述填写好账号名密码点击按钮或者按下enter
2022-04-19 16:25:22
438
原创 nebular 引入iconfont 字体图标,图标渲染成了框框
问题描述angular 项目,需要引入字体图标,在项目初始化的时候注册了字体,如下:this.iconLibrary.registerFontPack('iconfont', { iconClassPrefix: 'icon' });使用nb-icon 调用字体图标,如下:<nb-icon icon="" pack="iconfont"></nb-icon><span>控制面板</span>结果渲染成了框框,说明字体识别不出来。问题解决其
2022-04-13 21:35:58
657
原创 如何在angular 项目中设置scss 的load path,简化相对路径引用问题
问题解决angular 项目中样式互相引用,烦人的无休止的相对路径引用问题项目结构如下:// your folder structure- src - app - app.component.ts - hello - hello.component.html - hello.component.scss - hello.component.ts - ... - stylings - _variables.scss样式文件引入全局样式// hello
2022-04-11 15:58:43
1322
原创 配置providedIn: ‘root‘ 的angular service 不一定在整个application 层面就是单例服务
There are two ways to make a service a singleton in Angular:Set the providedIn property of the @Injectable() to “root”.Include the service in the AppModule or in a module that is only imported by the AppModule以上是Angular 官网上的原话,说是有两种方法在Angular 应用中提供单例服
2022-04-02 17:22:36
1985
原创 在pro-form@1.53.6 版本中刚打开弹窗setFieldsValue无效
问题原因本地开发环境pro-form@1.53.0,能够正常work;线上环境pro-form@1.53.6, 不能初始化成功。在最新的pro-form@1.57.0 中此问题不复存在,具体修复版本看changelog 看不出来,估计要去看源码!!问题描述ant design pro+umi 项目,点击一个button, 显示创建用户表单,传入初始化的值,formRef 为undefined 导致每次都不能重置表单,此问题发生在@ant-desigin/pro-form@1.53.6。expor
2022-03-11 18:18:23
738
原创 react项目打包后,浏览器直接打开dist/index.html页面出现空白
问题解决下面 umi 的两个配置解决了问题。{ publicPath: './', history: { type: 'hash', }}问题描述使用umi + react + ant design 搭建React web项目,使用的config.ts 配置如下:import { defineConfig } from 'umi';import defaultSettings from './defaultSettings';import proxy fr
2022-03-10 17:02:11
8583
原创 echarts line chart, x轴时间传入GMT格式字符串,绘图不符合预期
问题描述rest请求返回如下数据,想要以line chart 展现,期待是画出一条上升的直线,实际效果没有绘制出直线,一片空白。[{time: "2022-03-09 04:13:30 +0000 UTC", value: 0},{time: "2022-03-09 04:15:00 +0000 UTC", value: 20},{time: "2022-03-09 04:16:30 +0000 UTC", value: 30},{time: "2022-03-09 04:18:00 +0000
2022-03-09 18:20:36
476
原创 useRequest: 当请求返回错误时,run()不能正常工作。但是当请求返回成功(200), run()可以正常工作。
背景代码主体大约如下:# useTable.tsimport { useRequest } from "ahooks";const { loading, data, error, run }= useRequest<T>(service, { throwOnError: true, ...options, });return {data, loading, error, run}在页面调用如下:export default () =>
2022-03-07 18:13:16
1544
原创 swagger-ui docker部署启动, swagger文件加载失败,报错403
问题描述使用docker 实验swagger-ui, 想要渲染本地swagger 文件,页面渲染失败,启动命令如下:# 将本地swagger.json 挂在到容器里面$ docker run -p 80:8080 -e SWAGGER_JSON=/foo/openapi.json -v /bar:/foo swaggerapi/swagger-ui页面报错load file error, 日志信息如下:解决办法直接使用如下命令启动,不挂载swagger.json, 后续手动拷贝swagger
2022-02-14 14:51:35
3394
原创 @umijs/plugin-openapi apiPrefix 配置问题
问题描述:在使用umi + openapi 创建项目的时候,每个restAPI 的前缀都是一样的/api/v1,就不想在每个定义的path 里面都写上同样的basePath, 看到@umijs/plugin-openapi 配置的时候有一个apiPrefix 的属性,所以配置成了string 类型,值为‘/api/v1’, 但是生成出来的路径变成了如下:import { request } from 'umi';export async function getUsers(options?: { [
2022-02-10 17:19:29
4327
2
原创 npm7安装peer-dependency误区
npm 7 升级之后,所有peer dependency 会自动安装,但是如果某个包的peer dependency 和root 层同样包的版本冲突,npm7 会自动报错。尝试过网上的版本npm install --force 和–legacy-peer-dependency 标志。这个不会弹出报错信息,只是直接跳过安装依赖,不能解决问题包的使用问题。解决问题的办法就是手动在顶层安装冲突的依赖,虽然出现如下信息,但是安装的组件可以正常使用。···±- ng2-smart-table@1.7.2| ±
2021-08-19 13:21:16
1554
原创 Axios.delete 两种传参方式
Axios中文网特意说明data 传参方式只适用于POST,PATCH 和PUT,所以一直以为delete 传参也只能用params 传参,结果github API 文档上说的是Only applicable for request methods ‘PUT’, ‘POST’, 'DELETE , and ‘PATCH’, 到中文网就漏掉了,真是呵呵了,以后还是得看官方文档!!!!其实delete 两种传参方式都支持, 用法如下:// url 参数传递, DELETE /api/book/12?ke.
2020-07-23 11:31:15
13935
原创 Antdv dropdown 调整top,left
背景网站header 上面需要放置多个全局操作按钮,每个操作按钮归类了多个操作,因为可能涉及多个sub memu,所以采用了dropdown + menu组件。但是hover上去后发现,内容主题和操作按钮距离太近,不是很美观。解决[失败]尝试修改overlayClassName,在类中赋值.settings { top: 40px;}该种方式失败,因为dropdown 会默认添加内联样式style='top: 24px, left: 30px', 其中top 和left 说是计算出来
2020-07-15 16:52:05
3324
2
原创 docker 挂载volume的几种方式
bind mountdocker 创建一个匿名volume,并将容器中/foo目录下的内容拷贝到这个匿名目录中$ docker run -ti -v /foo [镜像]docker 将本地/foo目录中的内容挂载到容器的/foo目录中$ docker run -ti -v /foo:/foo [镜像]docker将名为foo 的volume 挂在到容器的/foo目录上,如果foo v...
2020-01-17 18:14:51
719
原创 文件下载实现插件jquery.fileDownload
现有下载实现弊端分析通常文件下载有三种方式,a标签下载,form 表单下载,blob转换url下载,但上述三种下载存在弊端,分析如下:a标签download下载无法catch errorform表单下载对于多文件下载,循环下载表单提交,会导致只有最后一个能提交,其他请求被cacel。因为form 表单提交需要时间处理表单数据blob转换下载会先缓存文件(并不是缓存到memory 中...
2020-01-13 16:26:09
2244
原创 ./src/main.js in multi (webpack)-dev-server/client?http://10.104.208.197:8081/sockjs-node...
前情想要看@vue/cli创建的项目和普通npm install 的项目区别,故将@vue/cli 创建的项目除了App.vue,main.js和package.json三个文件之外的其他文件删除,该三个文件在同一个目录下。然后使用npm install安装依赖,然后使用npm run serve命令启动本地开发环境,报如下错误:$ npm run servevue-cli-service ...
2019-12-23 15:46:22
53837
原创 私有仓库迁移harbor
准备硬件需求ResourceCapacityDescriptionCPUminimal 2 CPU4 CPU is preferredMemminimal 4GB8GB is preferredDiskminimal 40GB160GB is preferred软件需求SoftwareVersionDescription...
2019-09-20 13:46:18
2724
原创 async-validator 异步请求验证使用
异步请求验证参考github 项目:async-validator// PROMISE USAGEvalidator.validate({ name: "muji", asyncValidator: (rule, value) => axios.post('/nameValidator', { name: value }),}, (errors, fields) => ...
2019-08-16 16:43:33
3827
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人