Aliennnnnn


  • 首页

  • 目录

  • 标签

谁动了你的Base64?

发表于 2019-04-15

最近在项目中遇到一个很奇怪的问题。在使用SVG图片平铺作为页面背景时,会出现下图的情况,代码如下:

1
2
3
4
5
.edit-canvas-name {
background-image: url('./layout.svg');
background-size: 100% 100px;
background-repeat: repeat-y;
}

Read more »

详解 Webpack 之 externals 的使用

发表于 2019-01-18

在项目开发过程中,不可避免地会引入许多第三方库,导致 Webpack 打包后的 bundle 文件过大,Webpack 提供的外部扩展(externals)可以很好地解决这个问题。

externals会告诉 Webpack 无需打包哪些库文件,然后我们再通过 CDN 引入。

Read more »

TCP建立连接过程中为什么需要“三次握手”

发表于 2019-01-09

TCP 为什么是三次握手,而不是两次或四次?之前对此一直是模模糊糊,最近在看这方面的知识,把看到的一些比较好的解释和最近的一些理解组织一下和大家交流分享一下。

tcp

Read more »

递归组件多语言传递问题

发表于 2019-01-02

大家都知道使用多语言在配置好之后只需要在相应文件里

1
2
3
4
5
6
7
8
9
10
11
12
13
...
import { translate } from 'react-i18next';

@translate()
export default class PersonInfo extends React.Component {
render() {
let { t } = this.props;
return (
<div>{t('example.key')}</div>
)
}
}
...

但是我在给项目加入多语言的时候,遇到一个很奇怪的问题,有个文件加入多语言后一直会报

Uncaught (in promise) TypeError: t is not a function

Read more »

初探 Webpack 性能优化

发表于 2018-12-20

Webpack是现在主流的功能强大的模块化打包工具,在使用Webpack时,如果不注意性能优化,有非常大的可能会产生性能问题,比如开发时打包构建速度慢、开发调试时的重复性工作等。本文将会讲解一些基本的Webpack性能优化问题。

一、优化构建速度

  1. 设置 resolve.modules:[path.resolve(__dirname, 'node_modules')]避免层层查找。

    resolve.modules告诉 webpack 去哪些目录下寻找第三方模块,默认值为['node_modules'],会依次查找./node_modules 、../node_modules、 ../../node_modules。

    Read more »

前端部署服务器小节

发表于 2018-11-30

最近在将一些前端项目部署到服务器,现在总结一下关键步骤和踩过的一些坑

一、连接到Linux服务器

既然是部署到Linux服务器,当然要先有一个服务器啦,没有服务器的话可以先买一个“阿里云”或者“腾讯云”的服务器

Example:

`ssh -p port root@xx.xx.xxx.xx`  => 输入密码

port:  端口

root: 用户名

xx.xx.xxx.xx: IP

二、在服务器上安装相关依赖(若已安装可跳过)

Read more »

初探 Virtual DOM

发表于 2018-08-17

(一)什么是虚拟DOM

传统的 DOM 操作是直接在 DOM 上操作的,当需要修改一系列元素中的值时,就会直接对 DOM 进行操作。而采用 Virtual DOM 则会对需要修改的 DOM 进行 Diff 操作,只选择需要修改的部分。在React中,render执行的结果得到的并不是真正的DOM节点,而是轻量级的JavaScript对象,我们称之为Virtual DOM。
而对不需要大量操作 DOM 的页面来说,虚拟 DOM 可能不是最佳的,React 和 Vue 从来没保说过他们比原生操作 DOM 更快,引用腾讯 AlloyTeam 的一段话:

没有任何框架可以比纯手动的优化 DOM 操作更快,因为框架的 DOM 操作层需要应对任何上层 API 可能产生的操作,它的实现必须是普适的。
React给我们的保证是,在不需要手动优化的情况下,它依然可以给我们提供过得去的性能。

Read more »

Pug 初步使用及问题

发表于 2018-08-07

Pug 是一个健壮的、优雅的、功能丰富的node.js模板引擎。
Pug 原名不叫 Pug,而是大名鼎鼎的 jade,因为商标的原因改名 Pug,但是语法仍然没变。

(一)为什么要用 Pug

在开发官网的项目中,由于需求简单,且有大量可复用代码存在,让人不由自主地想对其进行组件化。然而由于 React 的 SEO 问题,只能选用其他的技术栈,Pug 就成了首选。

Pug 的优点很多,在官网项目里最实用的就是模板继承 Inheritance和包含 Include,这两个特性其实已经实现了我们想要的组件化的功能。

(二)Webpack 配置

Read more »

理解 同步/ 异步 与 阻塞/非阻塞

发表于 2018-07-24

在学习 JavaScript 过程中,经常遇到 同步/异步 ,阻塞/非阻塞 ,的说法,以前对其只有基本概念上的认识,对其机制存在困惑,比如到底什么是阻塞和非阻塞?什么是同步和异步?同步就一定是阻塞吗?异步就一定是非阻塞吗?
最近在学习 Node.js 过程中对这些概念有了更深的理解。

我们先来看一个例子,再去理解分辨这些概念。

(一)爱喝茶的老张

老张没别的爱好,就是爱喝茶,喝茶首先要烧开水。
出场人物:老张
出场道具:普通水壶(简称水壶);烧开水会鸣笛的水壶(简称响水壶)

Read more »

简单理解 Promise

发表于 2018-06-27

promise

以前学习ES6的Promise总是似是而非,当时好像懂了,但是实际遇到时总有这样或者那样的疑惑。直到我看到了一篇 Jecelyn Yeen 的分享。

(一)理解 Promise

举个简单的例子:
想象一下你是一个孩子。你老妈承诺下周给你买个新手机。你【不知道】你老妈会不会兑现承诺,你老妈可以信守承诺给你买个新手机,但是如果她不高兴的话,也可以让你滚蛋不买了。

Read more »

John Doe

10 posts
6 tags
© 2019 John Doe
Powered by Hexo
|
Theme — NexT.Pisces v5.1.4