自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

学海无涯苦作舟

每天学一点,每天进步一点……

  • 博客(75)
  • 收藏
  • 关注

转载 nginx关闭、重启命令

一、安装执行如下命令XXX-MAC$ brew search nginxXXX-MAC$ brew install nginx安装完以后,可以在终端输出的信息里看到一些配置路径: /usr/local/etc/nginx/nginx.conf (配置文件路径) /usr/local/var/www (服务器默认路径) /usr/local/Cellar/nginx/1.8.0 ...

2018-08-22 16:56:39 901

翻译 12、指令

内容提要 - 组件与指令之间的关系 - Angular中内置的指令(共37个) - 指令的作用(属性型和结构型) - 自定义属性型指令(@HostListener与@HostBinding) - 自定义结构性指令(非常复杂,一般在业务处理中用得很少,一般是会用在封装组件库中!) 指令相关的官方文档:https://angular.cn/guide/attrib

2018-02-09 15:52:21 337

翻译 11、ContentChild和ViewChild

在6.3节中使用ng-content投影过去的复杂组件,我们需要使用代码操作它该怎么做呢?使用@ContentChild装饰器可以获取到被投影的组件的实例首先父组件中使用子组件,并投影另一个组件: 然后再子组件中通过ng-content,使用select设置一个占位,以备投影:在投影进去的组件中导入ContentChild等必要模块。然后使用@ContentChild()装饰器,声明一个需要使用的

2018-02-09 15:10:54 932

翻译 10、内容投影

内容: - 最基本的ng-content的用法 - 用projection slotstou应多块内容 - 把自定义组件投影进去 - 事件的处理方式最基本的ng-content的用法一个最简单的嵌套结构,app.component.html中有一个父组件,然后父组件内部还有一个子组件。加入子组件中的东西可能不是那么简单,比如标题并不是写死的,也不是绑定在子组件的某个属性中的

2018-02-09 15:02:11 418

翻译 9、ShadowDom-Angular封装HTML模板和CSS的方式

Angular封装HTML模板和CSS的三种方式: - ShadowDom模式:使用浏览器原生方式渲染组件,但是不同浏览器的原生渲染方式是不一样的,存在浏览器之间的兼容问题 - emulated模式:即模拟模式,Angular默认的组件渲染方式,通过js模拟浏览器的原生渲染方式(即模拟ShadowDom模式),这个是为了完善在不同浏览器上的兼容性问题,性能当然是比不上浏览器原生渲染的,所

2018-02-09 14:48:32 694

翻译 8、组件高级玩法:动态组件

正常在父组件中使用子组件的方法是如下: 父组件html模板代码中:<!--前面的内容-->...<child-component></child-component><!--这里直接插入子组件标签,然后标签里面的内容都是固定的-->...<!--后面的内容-->但是如果我们不想这样固定地插入子组件,而是想通过代码动态地创建该如何进行呢?下面就介绍用代码动态创建组件: 直接看代码: 首先

2018-02-09 14:37:09 2640

翻译 7、Angular 2动效

动效概述Angular动效遵守的规范:https//w3c.github.io/web-animations/ (这个是w3c的规范,目前还是处于草案状态,可以看出Angular还是走在听前面的,哈哈)浏览器的支持情况:http://caniuse.com/#search=web-animation,从这边看到目前浏览器对web-animation的支持情况还是很差的,只有chrome和fire

2018-02-09 14:35:35 536

翻译 6、Angular 2组件的生命周期钩子

如果打算自己写组件库的话,组件的声明周期需要深入掌握。寻常的业务代码倒不会太涉及这方面的东西。 组件生命周期的这些钩子的执行顺序 如下图所示: 实现的ngOnChanges(){}钩子方法会在组件的最先运行,比ngOnInit()都更前。这和angular组件本身的实例化是有关系的。angular在实例化组件时是会先去处理那些输入属性(也就是@Input属性)的。所以会先调用ngOnChan

2018-02-09 14:31:50 1803

翻译 5、Angular 2组件间交互

父子组件之间的通讯父子组件使用后显示如下图所示: 随后代码结构,父子组件之间的代码层次如图所示:父组件接收子组件的事件,在子组件中使用@Output输出事件 通过下方代码注释中的1,2,3,4,5点注释,完成子组件按钮点击到父组件得到方法响应的过程。是一个子层向父层传递事件的过程。这就是父组件需要响应子组件的事件,或者接收数据,可以使用@Output输入一个事件,将数据通过event传递,作为

2018-02-09 13:44:00 1244

翻译 4、Angular 2模板语法

在使用angular/cli创建的新项目中,先将css的预编译器改为scss(将所有已.css为后缀的文件都改为.scss为后缀;同时将其他文件中对css文件的引用也都改为.scss)。随后导入bootstrap和font-awesome的依赖包(在package.json中添加这两个依赖包,然后运行cnpm install命令即可)。随后可以做对应的语法测试。插值语法也就是典型的{{}}获取值的方

2018-02-09 11:42:13 550

翻译 3、使用angular cli初始化一个新项目

新项目搭建ng new命令新建项目首先到工作目录底下,然后使用ng new命令初始化一个新项目:ng new newProject // 后面跟的是项目名称命令执行结果如下: 这个命令会自动帮我们生成所需要的一些基本文件,注意上图,在create完成一些命令之后,它还会自动调用npm install命令,使用npm把对应的依赖包下载下来。这个时候请使用ctrl+C,进

2018-01-10 11:52:23 8681

翻译 2、Angular 2环境搭建

这系列文章都是通过大漠孤烟的视频教程整理而来,挂个翻译标签不会被说什么侵权吧!Angular 2环境搭建安装node见下方nodejs&&npm安装安装完成node之后,就会自然有npm包管理器,但是我们搭建Angular 2的开发环境需要安装@angular/cli,这个东西依赖的包有些事会被墙的,所以我们需要使用国内的镜像。所以推荐使用cnpm安装angular/cli。所以我们需要先安装cn

2018-01-08 19:55:28 728

翻译 1、Angular整体概述

这系列文章都是通过大漠孤烟的视频教程整理而来,挂个翻译标签不会被说什么侵权吧!一、集成开发环境@angular/cli开发angular项目时需要哪些node模块呢?@angular/cli: - webpack - TS - Karma 单元测试 - Jasmine 单元测试 - protractor 量角器,集成测试,端到端测试 - Material Design自

2018-01-08 15:01:10 927

转载 ionic 2入门系列教程链接

在SegmentFault网站上看到关于ionic 2的入门系列教程,挂个链接知其所以然——前端来扯点ionic3

2018-01-04 15:31:21 319

原创 ionicCLI Angular页面跳转

1、Component中的.html文件中item添加点击事件:<a class="home-menu-item" *ngFor="let item of menuItems" (click)="gotoPage(item)"> <img class="" src="{{item.imgSrc}}"> <span>{{item.subTitle}}</span> </a>2、 C

2017-12-14 19:12:15 858

原创 iOS并发编程--GCD、操作队列、线程

现在iOS的多线程方案主要有以下这几种: 1. GCD(Grand Central Dispatch):使用dispatch queue(分派队列)执行tasks(任务),苹果公司推荐使用; 2. NSOperationQueue和NSOperation:使用operation queue(操作队列)执行operations(操作),苹果公司推荐使用; 3. NSThread:苹果公司封装的基

2017-11-30 15:04:18 768

转载 iOS开发 -- 跳转系统设置、WIFI、蓝牙…

未经允许不可装载,所以放上原文的链接咯: http://blog.csdn.net/spicyShrimp/article/details/69946396

2017-11-23 18:59:52 826

转载 AutoLayout中一些需要注意的点--结合Masonry使用

转载自: 简书博客地址:自动布局与Masonry使用注意事项1 理解自身内容尺寸约束与抗压抗拉自身内容尺寸约束:一般来说,要确定一个视图的精确位置,至少需要4个布局约束(以确定水平位置x、垂直位置y、宽度w和高度h)。但是,某些用来展现内容的用户控件,例如文本控件UILabel、按钮UIButton、图片视图UIImageView等,它们具有自身内容尺寸(Intrinsic Conten

2017-11-14 16:57:00 899

转载 iOS 关于Category

关于category、extention、category能否添加变量、category如何在运行时添加属性,这篇博客写得还挺好的:iOS 关于Category博客信息: 作者:劉光軍_Shine 链接:http://www.jianshu.com/p/535d1574cb86 來源:简书 著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2017-10-17 20:46:50 700

原创 OC的深拷贝与浅拷贝--NSArray与NSMutableArray应该使用copy还是strong?

Objective-C中对象的拷贝分为深拷贝和浅拷贝。另外还有容器类对象及非容器类对象的差别: 1. 对非容器类对象(如NSString、NSMutableString类对象)使用浅拷贝:拷贝的是对象的地址,没有新的内存被分配,只是原来的那块内容多了一个指针指向。也就是说新对象跟原对象都是指向的同一个内存地址,那么内容当然一样。 2. 对非容器类对象(如NSData、NSMutableData类

2017-10-12 21:17:17 5968

转载 UIButton 扩大点击响应区域

转自简书:http://www.jianshu.com/p/239adf1fae79前言APP产品中不乏一些图标很小的,但需要响应的按键或者控件。如果这些需要响应的控件实际响应范围跟其响应的实际大小一样,是不是非常影响用户体验?我们的答案是肯定的(WTF,这里的肯定到底是影响还是不影响?������)。 反正不管怎么样,如果产品有这个需求,我们也必须要处理的对不对?解决方案方案一(继承):直接创

2017-10-12 09:59:38 1622

原创 iOS基础 -- #imoprt、#include、@class

#import #include @class#import<>/#import""#include<>/#include""

2017-09-29 09:57:47 509

原创 iOS 开发 -- 使用KeyChain保存用户名、密码并实现自动登录

KeyChain使用工具类:一、前言 我的话,只是写了个keychain使用的工具类,让我们使用的时候可以直接调用接口,以求方便。 但是关于keychain的一些概念还有一些官方API我都不打算说的,当然你要看下面一些东西的话可能对keychain需要有一个大概的认识。 至少至少你需要知道keychain的这些个API操作都是需要基于一个字典的,我们把它叫做queryDict好了。

2017-09-22 15:32:21 3140

转载 iOS使用Charles(青花瓷)抓包并篡改返回数据图文详解

只是为了记载个地址,直接去原地址看吧,这边啥图片也都没有,复制过来的: http://www.cnblogs.com/dsxniubility/p/4621314.html写本文的契机主要是前段时间有次用青花瓷抓包有一步忘了,在网上查了半天也没找到写的完整的教程,于是待问题解决后抽时间截了图,自己写一遍封存在博客园中以便以后随时查阅。charles又名青花瓷,在iOS开发中的抓包中具有重

2017-09-18 09:55:24 961

转载 如何在iOS开发中更好的做假数据?

转载自其它地方,自己的笔记中也有,但是文件太多不好找,主要是想记录一下用Charles网络代理实现假数据的方式,所以只截取了这一块,想看全文的话,推荐到原地址查看: https://zhuanlan.zhihu.com/p/27638942网络代理第二种就是利用现有的网络代理软件,直接拦截对应的网络请求,然后返回本地写好的JSON数据。我最终采用的这种方案(因为我嫌配置服务器麻烦)。将A

2017-09-18 09:34:14 849

转载 【npm】利用npm安装/删除/发布/更新/撤销发布包

这篇博客感觉写得很好,所以转载过来了记录一下,格式都没有要看的话,直接到原地址看吧: 利用npm安装/删除/发布/更新/撤销发布包目录什么是npm? 利用npm安装包 npm安装的方式——本地安装和全局安装 利用npm删除包 删除全局模块 删除本地模块 利用npm 发布包 第一次发布包: 非第一次发布包: 利用npm撤销发布包 npm更新发布后的包:正文回到顶部 什么是npm

2017-09-13 19:46:56 997

原创 UIButton 设置图片文字位置 -- imageEdgeInsets && titleEdgeInsets

UIButton的这个东西,看了好多博客,好晕。。。。都不想研究了,先记一下吧:UIButton *rightButton = [[UIButton alloc] initWithFrame:CGRectMake(0, 0, 100, 44)]; [rightButton setTitle:@"这个是一个导航栏按钮" forState:UIControlStateNormal]; r

2017-08-31 16:57:29 1397

原创 iOS 在同一个页面中,通过childViewController切换界面

使用addChildViewController:方法,通过切换子viewController来切换界面,这个主界面就是一个container viewController的概念。将子viewController的view加进来的时候,注意修改其frame,让它适应你用来盛装内容的view的大小另外,childViewController中的所有东西可以通过一个UIScrollView盛装,加过来之

2017-08-31 13:57:21 5505

转载 ViewController的生命周期分析和使用

一些viewController生命周期的问题,view的创建过程创建时间什么的,就挂一些对应的博客在这边,需要的时候看看吧,都没时间好好看一下: iOS程序执行顺序和UIViewController 的生命周期(整理) – 简书iOS程序执行顺序 AppDelegate及 UIViewController 的生命周期ViewController的生命周期分析和使用view和viewControl

2017-08-28 14:16:44 255

原创 UITabBarController+UINavigationController 进入应用只显示一个tab的解决方法

各个tab所对应的controller的tabBarItem,与tabBarController的tabBar上面的item不对应的问题吧。在初始化的时候,每个viewController的title及对应的tab上图片还没有初始化好,所以获取不到,就没法显示。脑子比较乱,就记下来吧,以后就可以直接抄了!!!现在有下面几种写法:写法一NSArray *nameArray = @[@"首页", @"公

2017-08-11 16:59:28 938

转载 使用weinre真机调试移动web应用(转载)

只是保存一下大概,很多图片都没有,要看的去原地址看吧,转载自: http://div.io/topic/1322weinre 英文全称 WEb Inspector REmote。发音类似于‘winery’。术语(Terminology)当我们使用weinre时,会涉及到三个服务协调工作调试服务器(Debug Server) 这是一个HTTP服务器,你能从weinre-node运行。这个HT

2017-05-09 16:13:57 646

转载 跨域问题以及Nginx配置文件

为什么会有跨域问题同源策略/SOP(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,浏览器很容易受到XSS、CSFR等攻击。SOP要求两个通讯地址的:协议 (http、https)域名 (a.com、b.com)端口号 (a.com:8080、a.com:8000)必须相同,否则两个地址的通讯将被浏览器视为不安全的,并被block下来

2017-04-05 10:41:03 7444 1

转载 PyCharm集成开发环境配合nginx搭建部署环境

发布到本地服务器1.选中项目 2.Tools > Deployment > Configuration 3.点击添加弹出窗口4.输入名称并选择Type为5.Connection标签选择或输入发布目录6.Mappings标签配置对应地址7.如果有多个配置的时候可以通过以下两处设置为默认发布的服务8.设置默认后,在Tools > Deployment查看的时候,localDeplay已经显示在此,勾

2017-04-05 10:27:03 2024

转载 Git命令行基本操作

直接跳转原地址看吧: 返回主页 Tocy–Git命令行基本操作另外有个地方的博客看到感觉不多,Git板块: 玩转 Git - 毕小烦的学习笔记或者看看下方教程: 廖雪峰–Git教程pull与fetch命令的区别: Git 少用 Pull 多用 Fetch 和 Merge git fetch和git pull之间的区别Git的命令列表,各种命令,包括版本回滚等: Git常用命令 - Vma

2017-03-14 11:21:52 970

原创 Markdown语法帮助

这里有官方的 Markdown 语法规则文档: 创始人 John Gruber 的 Markdown 语法说明 Markdown 中文版语法说明标题在文字写书写不同数量的#可以完成不同的标题,如下:# 一级标题## 二级标题### 三级标题#### 四级标题##### 五级标题###### 六级标题等号及减号也可以进行标题的书写,不过只能书写二级标题,并且需要写在文字

2017-03-01 15:56:09 280

原创 Cmd Markdown 简明语法手册

Cmd Markdown 简明语法手册标签: Cmd-Markdown1. 斜体和粗体使用 * 和 ** 表示斜体和粗体。示例:这是 斜体,这是 粗体。2. 分级标题使用 === 表示一级标题,使用 — 表示二级标题。示例:这是一个一级标题============================这是一个二级标题-------------------------------------------

2017-03-01 15:45:46 2102

原创 搭建项目通用的网络框架

这里有Casa大神的文章: iOS应用架构谈 网络层设计方案虽然挺多高端东西都都不懂,但是大概也弄一个试试水吧,记录一下过程:viewController中发送请求业务层,在viewController中直接使用持有的manager调用方法进行请求的发送。[self.exampleManager requestDataFromAPI];下面就看manager的这个方法内要做什么:manager的设

2017-01-17 15:11:47 494

原创 iOS 多线程编程 GCD 死锁

GCD:Grand Central DiapathGCD多线程中的几组概念:任务:即操作,你想要干什么,说白了就是一段代码,在GCD中的一个block就是一个任务。 任务的执行方式有两种: 同步执行和异步执行,两者的区分在于是否会阻塞当前线程直到block中的任务执行完毕。 同步执行(sync) :会阻塞当前线程并等待 Block 中的任务执行完毕,然后当前线程才会继续往下运行。

2017-01-05 17:19:32 677

原创 iOS 将系统自带的button改装成上图片下文字的样子

经常会用到上面是图片,下面是文字的Button。这样的控件可以自定义,但是偶然发现一个直接对系统button进行图片与位置的重新layout实现同样效果的代码,最后使用的按钮是这样的:代码是通过继承UIButton,然后再重写layoutSubviews方法,对自带的图片和titleLabel进行重新的layout,代码如下://// ZZZUpDownButton.h//// Copyr

2016-12-27 11:25:02 1311

原创 通过修改约束常量,完成视图切换动画

写到一个这样的页面,登录和注册功能都在同一个页面中,先显示登录页面:然后没有账号的话就点击“注册账号”将“注册视图”移过来,同时将登录视图移出显示区:完成之后,就变成了注册页面了:页面是通过xib文件摆放控件摆出来的,视图切换动画代码如下: 动画的重要就只是改变一个约束的常量,让一部分移出到屏幕外,让屏幕外的一部分移入到屏幕内,用一样的思路,可以实现一个视图从屏幕外飞到屏幕中的动画:////

2016-12-27 11:02:37 417

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除