MVVM模式中如何实现数据监听

Object的defineProperty方法

  • 如何监听一个对象的某个属性被访问了呢?JavaScript提供了相关的机制给我们来实现,那就是设置对象属性的setter方法及getter方法。
let object = {
    name: 'sian',
    age: 18
}

Object.defineProperty(object, 'name', {
    get: function() {
        console.log('获取name的值')
    },
    set: function(value) {
        console.log('设置[......]

继续阅读

解决nvm导致终端启动慢的问题

问题的根本就是.zshrc中的这一段:

export NVM_DIR="$HOME/.nvm"
[ -s "$NVM_DIR/nvm.sh" ] && \. "$NVM_DIR/nvm.sh"  # This loads nvm
[ -s "$NVM_DIR/bash_completion" ] && \. "$NVM_DIR/bash_completion"  # This loads nvm bash_completion
  • 怎么解决呢?很简单,将这三行注释掉!不信你试试,终端秒开!!!
  • 可问题是我将这三行注释掉之后,nvm命令甚至node命令都没了,[……]

    继续阅读

Nginx反向代理https到http

应用场景:

  • 一台nginx服务器;一台或多台web服务器;
  • Nginx直接对外提供服务,web服务器只对nginx提供服务;

为什么要这样设计呢?直接web服务器对外提供服务不就可以了吗?何必多此一举。一般至少有2个方面的考量:

  1. 多台web服务器都需要对外提供服务,每台服务器上申请一个公网ip和公网带宽,成本太高;
  2. 单台服务器无法应对大并发的压力,需要多台服务器共台分摊;

1*nginx + N*web的架构就完美的解决了这两个问题:首先,nginx负责区分各个web服务器的流量分发到对应的服务器上处理,这便是反向代理;其次,nginx可以将流量根据一次策略分配[……]

继续阅读

创建Nginx+PHP的Docker镜像

1、相关说明

  1. 该镜像基于Centos8.3;
  2. Nginx与PHP均为官网下载源码编译安装;
  3. Nginx配置目录:/usr/local/nginx/conf 文件目录:/usr/local/nginx/html
  4. PHP配置目录:/usr/local/etc/
  5. 已做好的镜像地址:https://hub.docker.com/r/yusian/nginx1.20-php7.4

2、安装步骤

2.0 基础环境

docker镜像市场搜索cetnos,选择官方最新版本

[root@centos ~]# docker search centos

启动该镜像一个实例

[root@cento[......]

继续阅读