itext html2pdf 网上一些资料不全面,网上很多例子不太靠谱,有很多坑,这里给出工具和常见的坑,可以少走很多弯路。 支持html前端分页符和避免分页的属性。...1、优势 转换效果非常理想 不需要安装软件 2、依赖3个包 https://mvnrepository.com/artifact/com.itextpdf/html2pdf/2.1.0 https:/...).getPath(); fp.addDirectory(resources); props.setFontProvider(fp); // html中使用的图片等资源目录...Html尽量规范 html不支持float样式(关键字) 不要设置表格最小宽度 如果觉得本文对你有帮助,欢迎点赞,欢迎关注我,如果有补充欢迎评论交流,我将努力创作更多更好的文章。...另外欢迎加入我的知识星球,知识星球ID:15165241 一起交流学习。 https://t.zsxq.com/Z3bAiea 申请时标注来自CSDN。
angular组件的基本使用 组件 组件模板 ng generate component xxx 新建组件(大驼峰命名) 属性绑定 public...管道 {{currentTime | date:'yyyy-MM-dd HH:mm:ss'}} public currentTime: Date = new Date(); 常用管道 组件间的通讯...通讯方案 直接的父子关系,父组件直接访问子组件的 public 属性和方法 直接的父子关系,借助于 @Input 和 @Output 进行通讯 没有直接关系,借助于 Service 单例进行通讯 利用...cookie 和 localstorage 进行通讯 利用 Session 进行通讯 直接调用 父组件访问子组件方法 //子组件定义一个public的方法,父组件直接调用 //子组件 public...//子组件 @Input() public panelTitle:string; //父组件上可以这样设置 panelTitle 这个参数 的标题"></
首先介绍 Angular 中依赖注入的相关概念: Service 服务 Service 的表现形式是一个class,可以用来在组件中复用 比如 Http 请求获取数据,日志处理,验证用户输入等都写成Service...,供组件使用。...import { Injectable } from '@angular/core'; // 在 Angular 中,要把一个类定义为服务,就要用 `@Injectable` 装饰器来提供元数据 @Injectable...userFactory 除了useClass写法,还可以使用 userFactory 工厂方法,这个方法返回的实例作为构造函数中productService参数的内容。...当声明在组件和模块中的提供器具有相同的token时,声明在组件中的提供器会覆盖模块中的那个提供器。
模块Module Angular 应用的基本构造块是NgModule, 它为组件提供了编译的上下文环境。 Angular 应用就是由一组NgModule定义的。...exports(导出表) —— 用于其它模块的组件模板中使用的声明对象的子集(the subset of declarations)。...imports(导入表) —— 其他模块,本NgModule声明的组件需要使用它们的导出类。 providers —— 本模块向全局服务中贡献的那些服务的创建器。 这些服务能被本应用中的任何部分使用。...app 时 CommonModule @angular/common 当你想要使用NgIf 和NgFor时 FormsModule @angular/forms 当要构建模板驱动表单时 ReactiveFormsModule...@angular/forms 当要构建响应式表单时 RouterModule @angular/router 当要使用路由功能,并且你要用到RouterLink, forRoot() 和.forChild
generate module app-routing --flat --module=app 修改app-routing.module.ts import { NgModule } from '@angular.../core'; import { CommonModule } from '@angular/common'; // 引入路由模块 import { Routes, RouterModule } from...'@angular/router'; // 引入被路由的组件 import {HomePageComponent} from '....HomePageComponent } ]; @NgModule({ declarations: [], imports: [ CommonModule, // 初始化路由模块,监听定义的路由...从路由中获取参数 // 引入Router import { ActivatedRoute } from '@angular/router'; // 注入ActivatedRoute constructor
这是我参与「掘金日新计划 · 4 月更文挑战」的第18天。 在 Angular 自定义指令 Tooltip 文章中,我们说会出一篇关于 sass 样式的文章,现在它来了。....scss 为后缀,语法用 {} 修饰 .sass 为后缀,语法是缩紧方式 推荐使用 .scss 项目集成 angular 项目使用脚手架生成,在添加样式这一个步骤,会询问你编写样式的方式,让你选择...在 angular 中编写样式,可以分为组件样式和全局样式。...全局样式 angular 脚手架生成的项目,默认在 src/style.scss 文件存放全局的样式。在这个文件修改的样式,将对整个应用的样式产生影响。...使用嵌套 在使用 css 样式的时候,我们需要对不同元素进行样式的编写,我们需要考虑到元素所在的层次,采用不同的权重对其进行修改。
如果页面引入该Js文件 ,就相当于在页面中新增了一个标签,所以在任意框架中都可以使用新标签,就像它是原生div一样。 ...二、Angular Elements 使用实战 前不久看到项目angular-elements-dashboard :支持动态加载模块和动态加载外部的模块。...于是我就尝试一下,看这个构建的angular elements 文件到底如果引入一个空白的页面中,引入后的组件在浏览器中又是如何呈现的。 页面结构: ?...总结一下,通过使用两个种方式操作自定义元素和以前学习的内置元素的概念一模一样。 ...它的目的是为了不改变Native的模式情况下,引入最新的Shadow Dom v1技术 ,而Native已经过时,不鼓励使用。
创建组件需要三步: 1.从 @angular/core 引入 Component 装饰器 2.创建一个类,并用 @Component 修饰 3.在 @Component 中 ,设置selector、template...创建和插入这个组件实例的元素属性。...templateUrl(模版地址): HTML的一种形式,它告诉Angular如何呈现这个组件。...template (模板): HTML的一种形式,它告诉Angular如何呈现这个组件。...styleUrls(模版样式地址): css样式,在组件模版中引用的css样式。 ---- sivona
一、Overview angular 入坑记录的笔记第一篇,完成开发环境的搭建,以及如何通过 angular cli 来创建第一个 angular 应用。...Angular 从入坑到弃坑 - Angular 使用入门 三、Knowledge Graph ?...4.1.2、运行第一个 Angular 应用 通过 Angular CLI 命令来创建一个新的应用 ## 指定位置,创建新的 angular 应用 ng new my-app 常用命令参数 options...angular.json - 应用于当前工作空间的一些默认配置以及供 angular cli 和开发工具使用的配置信息 browserslist - 项目所针对的目标浏览器 3 karma.conf.js...↩ 2 现代浏览器支持的某些原生 API,当用户使用老版本的浏览器或某些浏览器时并不支持,只要使用了 polyfills 这个库, 即可对于这些无法使用的浏览器添加支持,使用方法也无需更改(PS:针对的是原生的
/// /// 解析空白符(空白,制表)分隔的字串 /// /// <param name="strs...strs) { ArrayList ar=new ArrayList(); //[^\s]+表示1一个以上的非空白符...,+至关重要;/s表示空白符; Regex re=new Regex(@"[^\s]+\s",RegexOptions.Multiline); Match
如果您正在使用angular, 但是没有好好利用angular cli的话, 那么可以看看本文....Angular CLI 官网: https://github.com/angular/angular-cli 安装angular cli: npm install -g @angular/cli 不过首先要确保您安装了比较新版本的...然后看下dependencies: 我们使用的是angular 5.2.0, 前面的^符号表示, 我们使用的版本号是大于等于5.2.0的但是肯定会小于6....综上, ng new 的这些参数可以在生成项目的时候作为命令的参数联合使用, 其中有一些参数也可以在项目生成以后通过修改angular-cli.json文件来做修改....前面我介绍了使用ng new参数和修改angular-cli.json文件的方式来配置cli, 下面我介绍下通过ng set 来配置cli.
针对一个应用里面有多个module的情况....再生成一个module, 并且带着路由module (可以先使用-d参数查看将要生成的文件): ng g m admin --routing 在admin module里面, 再创建一个admin component...: ng g c admin ng g c admin/email -m admin ng g c admin/user -m admin 实际上后两个命令的-m参数可以去掉, 因为已经指定了路径 admin
Angular中ui-select的使用 最近工作一直很忙,没有时间整理知识,前几天项目中需要用到angular-ui-select,实现下拉框快速过滤效果,今天有时间研究了一下,终于搞明白了。...所依赖的Angular和Angular-sanitize最低版本,只有依赖的版本符合要求,才能实现功能,否则会报错。...如果项目中用到的Angular版本比较低时,请安装低版本的Angular-sanitize和Angular-ui-select,这样,避免低版本不支持的情况。...2.安装方法: 使用npm进行安装 npm install Angular-sanitize@1.2.28 --save -dev @+版本号表示安装指定版本的包文件,如果不加版本号,默认安装最新的版本...二、使用方法 1.首先依次引入所需要的文件 ?
Consider the following controller: angular.module("myApp.store").controller("StoresCtrl", function($scope...} }); return null; }); }); beforeEach(function() { // When Angular
前言: 最近一直在使用阿里的NG-ZORRO(Angular组件库)开发公司后端的管理系统,写了一段时间的Angular以后发现对于我们.NET后端开发而言真是非常的友善。...因此这篇文章主要是对这段时间使用Angular做一些小总结,希望可以帮到有需要的同学。...注意:constructor 构造函数(依赖注入,起到对应局部变量值初始化作用): 除了使用简单的值对局部变量进行初始化之外,什么都不应该做!!...[请求数据时使用] ngDoCheck() 检测,并在发生 Angular 无法或不愿意自己检测的变化时作出反应。...NPM的安装源: 临时切换使用: npm --registry https://registry.npm.taobao.org install express 持久使用(推荐): npm config
这是我参与「掘金日新计划 · 4 月更文挑战」的第5天。 作为前端开发,我们跟后端对接接口是很频繁的事情,但是,我们对接的过程中总是遇到跨域的问题,那么我们如何解决呢?...本文使用 angualr 来讲解代理 api 对接的话题。 首先我们先来了解下,什么跨域。 跨域 简单理解:当一个请求的协议、域名(ip地址)、端口三部分任意一个当前页面的 url 不同就是跨域。...,pathRewrite 是对代理的前缀的重写。...我们在 package.json 中添加多一条命令行,表明是开发环境调试使用。...'@angular/core'; // http 客户端 import { HttpClient } from '@angular/common/http' @Injectable({ providedIn
expression是一个数字: digitInfo是string具有以下格式的: {minIntegerDigits}....{minFractionDigits}-{maxFractionDigits} minIntegerDigits是要使用的最小数字的整数数字。...默认为1 minFractionDigits是分数后的最小位数。 默认为0 maxFractionDigits是分数后的最大位数。...value: string) { this.value = value; } } 4.日期格式转换 {{ today | date[:format] }} today是一个日期对象或数字(自UTC时代以来的毫秒...)或ISO字符串 [:format] 指明要包括的日期/时间组件。
最近太忙了,项目中使用的弹框老板嫌太丑,让我们优化一下,我在网上找了一下,找到了sweetalert弹框,算是比较好看的弹框了。...,但是只能用sweetalert中的css,js必须通过npm下载sweetalert,引入下载的sweetalert.min.js 二、版本说明 Angular V1.2.30 Angular-sweetalert...V1.0.4 Sweetalert V2.1.0 因为我们项目使用的angular版本较低,所以相对应下载的angular-sweetalert版本也低。...一定要注意版本,如果angular-sweetalert版本过高,所依赖的文件angular版本过低,会导致引入报错。...所有文件及使用详见:https://github.com/lela520/SweetAlert 官方文档:https://sweetalert.js.org/docs/
Angular中ui-grid的使用 在项目开发的过程中,产品经理往往会提出各种需求,以提高用户体验。最近,项目中用到的表格特别多,而且表格的列数和行数也超多。...由于我们的项目用的是angular 开发的,在项目中引入bootstrap-table和其它的文件冲突了,所以就放弃了。...依赖的angular版本的angular版本 二、引入文件 ? ...三、基本使用 1、HTML 1 使用方法详见:https://github.com/lela520/Angular-ui-grid
之前工作以Angular1.x为主,主要做业务系统,以后工作中技术栈可能以vue为主,在此对Angular1.x的使用做一个简单总结,这里使用1.5+版本。...基本概念 1、依赖注入 依赖注入,在angular中到处可见,这里不会照本宣科,只以很直白的方式的简单描述基本使用方式,以$scope注入为例。 ...2、directive 指令系统,我认为是angular1.x版本中最强大也是最复杂的部分,angular作者本身做后端出身,所以在整个指令周期也符合语言处理过程:经过编译(compile函数,会返回...3、component component是1.5+新增的方法,主要为了往angular2+的过度更自然一些,相当于指令restrict:’E’的简化,类似于vue中的component,不建议操作...ui-router,ui-router是基于state的一种路由框架,是使用最多的一种路由模式。
领取专属 10元无门槛券
手把手带您无忧上云