Deprecated: parse_url(): Passing null to parameter #1 ($url) of type string is deprecated in /www/wwwroot/blog_qqvbc_com/usr/plugins/Access/Access_Core.php on line 339

Deprecated: parse_url(): Passing null to parameter #1 ($url) of type string is deprecated in /www/wwwroot/blog_qqvbc_com/usr/plugins/Access/Access_Core.php on line 392

Deprecated: parse_url(): Passing null to parameter #1 ($url) of type string is deprecated in /www/wwwroot/blog_qqvbc_com/usr/plugins/Access/Access_Core.php on line 394
Joyber 的博客

千锋前端Vue3.0 + Electron快速入门视频教程,基于Vue3.0+Electron 19桌面混合开发项目实战教程
https://www.bilibili.com/video/BV1FP4115739/?p=38&spm_id_from=pageDriver&vd_source=c9b3de14b342c2afe5a988c2a9c40237

用到的一些工具:

  • 类似less\sass的CSS高级语言:stylus
  • 监听项目文件更改后重启项目命令的工具:nodemon
  • VUE3推荐的类似webpack的脚手架工具: vite2
  • VUE3推荐的state全局存储库和状态管理插件:pinia
  • VUE3推荐的路由插件:vue-router
  • electron窗口状态保持(大小、位置):electron-win-state
  • JS实用工具包:lodash
  • localStorage/sessionStorage操作插件:store2

vue3状态管理方法:

  • 使用内置的 provide、inject 方法,在父组件里定义一个依赖,在子组件里可以引用注入这个依赖,实现状态同步
  • 使用pinia状态管理插件

vue3可以在script标签中加个setup属性,就可以直接在script标签里写VUE3代码
所有 ES 模块导出都被认为是暴露给上下文的值,并包含在 setup() 返回对象中

<script setup>
    import { inject } from 'vue'
    import Child from './Child.vue'
    const {isShow} = inject('appState')
</script>
<template>
    <div>
        {{isShow}}
        <Child/>
    </div>
</template>

function urlEncode(param, key, encode) {
    if(param==null) return '';
    var paramStr = [];
    var t = typeof (param);
    if (t == 'string' || t == 'number' || t == 'boolean') {
        paramStr.push((encode==null||encode ? encodeURIComponent(key) : key) + '=' + ((encode==null||encode) ? encodeURIComponent(param) : param));
    } else {
        for (var i in param) {
            var k = key == null ? i : key + (param instanceof Array ? '[' + i + ']' : '.' + i);
            paramStr.push(urlEncode(param[i], k, encode));
        }
    }
    return paramStr.join('&');
}

有时候需要忽略鼠标滚动、点击等事件,直接操作被DIV遮挡的元素,这时候就需要点击穿透了

pointer-events:none;

不过,加上这个样式以后,该元素下的所有元素都不能响应鼠标事件了,那么在里面还需要在正常响应鼠标事件的层上再恢复一下:

pointer-events:auto;

拼音发音mp3拼接链接
https://img.zdic.net/audio/zd/py/j%C4%ABng.mp3
https://img.zdic.net/audio/zd/py/l%C3%BA.mp3

带声调的字母如下:1、【a】āáǎà2、【o】ōóǒò3、【e】ēéěè4、【i】īíǐì5、【u】ūúǔù6、【ü】ǖǘǚǜ现代汉语普通话的声调,共分四类,分别是:“阴平声、阳平声、上(读如‘赏’)声、去声”,简称为阴、阳、上、去。不过,一般民众或小学生都只用“第一声”、“第二声”、“第三声”、“第四声”来代替“阴”、“阳”、“上”、“去”。

centos6.9 PHP5.4版本升级到7.3

yum install epel-release
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
yum --enablerepo=remi-php73 install php
yum --enablerepo=remi-php73 install php php-mysql php-zip gd php-gd gd-devel php-xml php-common php-mbstring php-ldap php-pear php-xmlrpc php-imap
yum --enablerepo=remi-php73 install php-redis php-fpm

php -v

出现这个警告:

PHP Warning: Module 'curl' already loaded in Unknown on line 0

PHP程序报错:

Class 'ZipArchive' not found

没有安装php-zip

yum --enablerepo=remi-php73 install php-zip

通常,PHP 模块以两种方式之一加载 – 将模块直接编译到 PHP 二进制文件中,
或者通过 php.ini 文件将它们作为扩展加载。如果以两种方式加载模块,则会发出警告。
去配置文件把curl注释掉

vim /etc/php.ini 找到 extension=curl.so 这一行前面加上;注释

php -v 没有警告了
php -m 查看加载的模块,看到curl模块仍然是有的

ll /usr/lib64/php/modules/redis.so

whereis php

/usr/bin/php -v  #7.3.25
/usr/local/php/bin/php -v #原来的5.4,前面报了一堆警告信息

php -r 'echo date("Y-m-d H:i:s");'

service php-fpm status  #php-fpm is stopped

chkconfig --list | grep php

ps aux| grep php

php-fpm -t

php-fpm -v   #PHP 7.3.25 

whereis php-fpm

/etc/php-fpm.conf

cd /etc/php-fpm.d/

cp www.conf www.conf.bak

cat www.conf.bak | grep '^[^;]' > www.conf     #把默认配置去掉注释的行写到www.conf

添加www用户和组

cat /etc/passwd
adduser --help
adduser -rm www            #创建系统用户,创建家目录
usermod --help
groupadd --help
ps aux| grep php        #发现现在运行的PHP是nobody
groupadd -r www            #创建用户组,提示已经存在了
cat /etc/group            #查看组是否是www用户的组ID
usermod -c www www        #将www用户添加到www组
usermod -s /sbin/nologin www        #将www登录脚本设置为不需登录

修改网站php配置

vim /etc/php-fpm.d/www.conf

[www]
user = www
group = www
listen = /tmp/php73-cgi.sock
listen.owner = www
listen.group = www
listen.mode = 0666
listen.allowed_clients = 127.0.0.1
pm = dynamic
pm.max_children = 80
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 35
pm.status_path = /php73_status
ping.path = /php73_ping
slowlog = /var/log/php-fpm/www-slow.log
request_terminate_timeout = 3
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
php_value[session.save_handler] = files
php_value[session.save_path]    = /var/lib/php/session
php_value[soap.wsdl_cache_dir]  = /var/lib/php/wsdlcache
php-fpm -t            #测试配置文件正常后,启动php-fpm

service php-fpm start
service php-fpm status
ps aux|grep php        #查看运行的进程
ll /tmp/php73-cgi.sock        #查看监听的文件

修改nginx配置中的php服务

location ~ .*\.(php)?$ {
    try_files $uri =404;
    #fastcgi_pass   127.0.0.1:9000;
    fastcgi_pass  unix:/tmp/php73-cgi.sock; 
    fastcgi_index index.php;
    include fastcgi.conf;
}