BACKEND 十月 19, 2019

真正的`服务层`是怎么写的?

文章字数 31k 阅读约需 28 mins.

其实很多系统架构里面都有服务层,但是服务对很多开发人员来说都有很多不同的定义和写法。甚至在我待过的公司里都有不同的写法和编写模式。每个人每个团队每个项目都有对服务不同的理解。那到底什么是服务,怎么理解...

查看全文

BACKEND 十月 19, 2019

真正的`服务层`是怎么写的?

文章字数 31k 阅读约需 28 mins.

其实很多系统架构里面都有服务层,但是服务对很多开发人员来说都有很多不同的定义和写法。甚至在我待过的公司里都有不同的写法和编写模式。每个人每个团队每个项目都有对服务不同的理解。那到底什么是服务,怎么理解才是对的呢?

你们有没有过无数个夜晚里严重怀疑人生,琢磨着到底哪一种服务才是对的?哪一种才是最好的写法,哪一种才能达到服务的真正意义?因为这种执着,我开始在国外的各种网站,大神们写过的开源大项目里面和文章里面总结出一个大多数研发伙伴们认可的理解方式和编写方式。

要理解什么是服务,我们先来给服务一个定...

查看全文

FRONTEND 十月 11, 2019

使用Console技巧提高JS调试技能

文章字数 19k 阅读约需 17 mins.

其实 JavaScript 给到我们很多调试工具来调试代码,那问问你自己,你又知道多少呢?用到多少呢?

大部分前端开发在 JavaScript 调试代码的常规用法都是直接console.log,直接输出某一个变量或者返回数据里面的对象数据。当然毋庸置疑这样输出来调试是没有问题的。但是不是最优雅的方式来调试代码,其实还有更好的办法。作为一个有追求的技术人才,有更好的调试方式为什么不去使用呢?

我们先来了解清楚浏览器的console。浏览器的console对象有提供自带的调试控制台。console...

查看全文

运维 九月 10, 2019

GitLab Webhook 自动部署

文章字数 12k 阅读约需 11 mins.

创建部署公钥

sudo -Hu www ssh-keygen -t rsa

如果创建失败首先需要创建/home/www/.ssh 这个文件夹

查看公钥

cat /home/www/.ssh/id_rsa.pub
```··

### 添加 Hook

在阿里云 code.aliyun.com 上的 profile>ssh_key 里面添加公钥

## 初始化 git 项目文件夹

```bash
sudo -Hu www git clone [git地址]

这里注意, 一定要用 www 的身份状态要不...

查看全文

LARAVEL 一月 10, 2019

Lumen 使用 laravel passport

文章字数 17k 阅读约需 16 mins.

Lumen是laravel的简洁版, 把laravel里面深重的依赖都去掉了, 所以直接安装laravel的passport是无法正常使用的.
所以如果要在lumen上使用laravel的passport就需要安装另外一个插件.

  • PHP >= 5.6.3
  • Lumen >= 5.3

首先安装 Lumen Passport

# 进入项目根目录
$ cd lumen-app

# 使用composer安装插件
$ composer require dusterio/lumen-passport...
查看全文

LARAVEL 一月 10, 2019

Lumen passport实现多个用户体系下的oauth验证

文章字数 20k 阅读约需 18 mins.

这个教程是基于, lumen里面已经安装好了lumen-passport的插件, 如果还没有的话可以先到lumen使用laravel passport教程先安装.

文件路径 vendor\laravel\passport\src\Bridge\UserRepository.php

  • 首先需要改写userRepositroy里面的getUserEntityByUserCredentials方法

  • 复制userRepositroy里面的getUserEntityByUserCredentials...

查看全文

IONIC 四月 24, 2017

IONIC 2 实现首页双击退出APP

文章字数 13k 阅读约需 12 mins.

首先在app/app.html下加入#myNav, 这个是用于绑定当前页面的导航标签

<ion-nav #myNav [root]="rootPage"></ion-nav>

然后在app.component.ts做相对的改动

import { Component, ViewChild } from '@angular/core';
import { Platform, ToastController, Nav, App } from ...
查看全文

IONIC 四月 20, 2017

IONIC 3 使用sliders轮播时拖动后autoplay失效解决方法

文章字数 3.5k 阅读约需 3 mins.

我们先了解一下Ionic的Sliders

首先Ionic里面的sliders是用Swiper.js的第三方插件实现的, Ionic官方Sliders的文档里面只描述了可以直接写入html标签内的属性, 有很多高级属性是没有写在文档里面的.

要怎么改变sliders的其他属性呢?

那如果我们要用到Swiper的其他属性怎么办呢? Ionic 2.x 的时候我们是可以在options里面传入的, 但是升级Ionic 3.x.x 后sliders的options属性被移除了. 现在要改变sliders...

查看全文

IONIC 四月 11, 2017

修复 Ionic 3.0.1 在IOS点击Tabs多次出现黑屏问题方法

文章字数 5.6k 阅读约需 5 mins.

Ionic 3.0.1 在IOS存在的一个严重的BUG,在IOS下多次重复点击TAB的时候页面会出现黑屏问题。

好消息是目前有一个暂时的修复方法。但是这个方法涉及修改Ionic核心代码,所以如果你们正在使用Ionic3发布APP,可以暂时使用以下办法修复问题。

node_modules/ionic-angular/components/tabs/tabs.js找到一下代码 (468行)

getComponent(this._linker, tab.root).then(function...
查看全文

IONIC 四月 10, 2017

IONIC 2 升级 3 教程

文章字数 19k 阅读约需 17 mins.

这一次的升级Ionic 3 换成了使用最新的Angular 4.0, 最新的TypeScript, 添加了懒加载和修复了一些组件的bug.

  1. 首先更新package.json, 按照以下的代码相应替换你package.json里面的代码, 并且把你项目根目录下的node_modules文件夹删除掉, 然后运行npm install (如果你是用淘宝镜像可以运行 cnpm install)
"dependencies": {
    "@angular/common": "4.0.0",
    ...
查看全文

IONIC 三月 19, 2017

IONIC 2 - 确认密码

文章字数 19k 阅读约需 17 mins.

开发过程中一般在注册或者修改密码都要写一个密码确认的表格, 这篇文章就是记录怎么在Ionic2里面使用FormBuilderValidators判断密码是否一致.

首先这篇文章是默认您已经了解怎么使用Angualr2FormBuilderValidator, 如果你还没了解这两个类的用法可以前去看Ionic2的文档

第一步首先我们需要实例了FormBuilder的一个FormGroup

  • 这里我们定义了passwordForm的这个表格里面的input.
  • 在最后我们加入了自定义认证方法...
查看全文
加载更多
0%