• js 多层菜单递归

    2020-03-13 浏览:705
    思路 首先遍历一遍data找到顶级菜单(pid=0)存入res中,然后遍历res,为每一项添加children属性,用每一项的id作为pid查找它的子元素,没有则退出并删除children,不断递归即可 function getTree(pid, arr, res) { for (let i = 0; i < arr.length; i++) { if (arr[i].pid == pid) { res.push(arr[i]) arr.splice(i, 1) i-- } } res.map(r => { ... 展开全文
  • 二叉树的遍历

    2019-10-18 浏览:1176
    二叉树是每个结点最多有两个子树的树结构。通常子树被称作“左子树”(left subtree)和“右子树”(right subtree)。二叉树常被用于实现二叉查找树和二叉堆。 结构 1 / \ 2 3 / \ \ 4 5 6 二叉树的遍历分为深度优先遍历(DFS)和广度优先遍历(BFS),深度遍历有前(先)序、中序以及后序三种遍历方法,广度遍历即我们寻常所说的层次遍历 深度优先遍历(DFS) 深度优先搜索属于图算法的一... 展开全文
  • wordpress登录界面样式优化

    2019-10-16 浏览:1332
    效果 引入样式表 functions.php function login_scripts() { wp_enqueue_style( "login-index", get_template_directory_uri() . "/style/login.css" ); } add_action('login_enqueue_scripts', 'login_scripts'); 样式 less .login { position: relative; background-image: url("https://img.qianxiaoduan.com/wp-bj.jpg"); background-position: center; background-size: cover; } #login { position: abs... 展开全文
  • 使用场景 session运行在服务器端,当客户端第一次访问服务器时,可以将客户的登陆信息保存。 可以保存一些客户的常用信息,当客户端再次获取常用信息时,不必再从数据库中进行查询。 在使用session时数据会直接存储在内存中,数据过大会造成溢出,所以session需要配合数据库使用,这里使用redis存储session数据 使用redis需要在服务器中安装redis node项目引入 npm install express-session --save npm install redis connec... 展开全文
  • 在项目开发中,会遇到很多定时任务的工作。比如:定时导出数据、定时发送消息或邮件、定时备份等等,node-schedule是 Node.js 的一个 定时任务(crontab)模块,这里使用node-schedule实现在node中的定时任务 安装 npm install node-schedule --save 基本用法 引入 const schedule = require('node-schedule'); 格式 * * * * * * ┬ ┬ ┬ ┬ ┬ ┬ │ │ │ │ │ | │ │ │ │ │ └ 星期几,取值:0 - 7,其中 0 和 7 ... 展开全文
  • 时间复杂度推导

    2019-09-23 浏览:1065
    定义 若存在函数 f(n),使得当n趋近于无穷大时,T(n)/ f(n)的极限值为不等于零的常数,则称 f(n)是T(n)的同数量级函数。 记作 T(n)= O(f(n)),称O(f(n)) 为算法的渐进时间复杂度。也叫大O表示法。 推导原则 用常数1取代运行时间中的所有加法常数; 在修改后的运行次数函数中,只保留最高阶项; 如果最高阶项存在且不是1,则去除与这个项相乘的常数。 举例 例1 for (let i = 0; i < n; i++) { ... 展开全文
  • 七牛文件上传的前后端部署

    2019-09-06 浏览:1380
    后端(Node.js) 后端的作用是为前端提供上传所需要的凭证 准备 注册七牛开发者帐号 登录七牛开发者后台,获取AccessKey 和 Secret Key 创建对象存储的存储空间 地址:https://portal.qiniu.com/user/key sdk安装 npm install qiniu --save token生成 let mac = new qiniu.auth.digest.Mac(accessKey, secretKey); let options = { scope: config.Bucket, expires: 7200, returnBody: '{"key":"$(key)","hash":"$... 展开全文
  • jenkins自动构建403报错解决方案

    2019-08-05 浏览:2913
    报错: Error 403 No valid crumb was included in the request 解决方案1: 在系统管理 –> 全局配置安全中调整设置: 取消“防止跨站点请求伪造”的勾选 解决方案2: 勾选“防止跨站点请求伪造” 获取Jenkins-Crumb wget -q --auth-no-challenge --user USERNAME --password PASSWORD --output-document - 'http://IP:PORT/crumbIssuer/api/xml?xpath=concat(//crumbRequestField,":",//crumb)' 更换USERNAME PASSWORD IP:PORT ... 展开全文
  • Sequelize基本用法

    2019-07-09 浏览:4416
    安装 $ npm install --save sequelize # 还需要安装以下之一: $ npm install --save pg pg-hstore // postgreSql $ npm install --save mysql // mysql 或 mariadb $ npm install --save sqlite3 $ npm install --save tedious // MSSQL 建立连接 const Sequelize = require('sequelize') const sequelize = new Sequelize(db.database, db.user, db.password, { //表名 用户名 密码 host: db.host, //地址 port: ... 展开全文
  • nginx常用命令

    2019-07-03 浏览:1233
    nginx.conf路径 ps -ef | grep nginx 重载nginx.conf配置 nginx -s reload 反向代理配置 server { listen 80 default; server_name api.example.com; location / { proxy_pass http://localhost:3000; } } 下载文件到本地 //下载根目录下qiniu文件夹到本地temp文件夹中 scp -r root@IP地址:/qiniu/ D:\temp 端口启停 //编辑 vi /etc/sysconfig/iptables //重启服务 /etc/init.d/iptables resta... 展开全文
  • wordpress文章列表分页实现

    2019-04-03 浏览:1422
    wordpress文章列表分页实现 wordpress文章列表分页实现,解决了分页失效的问题 <?php $limit = get_option('posts_per_page'); $paged = (get_query_var('paged')) ? get_query_var('paged') : 1; $query = array( 'paged' => $paged, 'limit' => $limit ); query_posts($query); if (have_posts()) : while (have_posts()) : the_post(); ?> //content <?php endwhile; ?> <?php... 展开全文
  • 使用七牛qshell备份服务器数据

    2018-07-12 浏览:4536
    qshell是利用七牛文档上公开的API实现的一个方便开发者测试和使用七牛API服务的命令行工具。该工具设计和开发的主要目的就是帮助开发者快速解决问题 文档地址:https://developer.qiniu.com/kodo/tools/1302/qshell 下载qshell 新建qshell文件夹,下载qshell并解压 mkdir qshell cd qshell wget http://devtools.qiniu.com/qshell-v2.1.8.zip unzip qshell-v2.1.8.zip 输入 ls 查看解压后文件 qshell-darwin-x64 Mac 64位系... 展开全文
  • 使用WP_Query输出文章列表

    2018-04-13 浏览:5301
    WP_Query 是在 wp-includes/query.php 中定义的一个用于处理wordpress中文章或页面的类,使用WP_Query可以查询任何你想要的内容 用法举例 查询分类别名为team的4篇最新文章并输出标题: <?php $args=array( 'category_name' => 'team', 'posts_per_page' => 4, ); $query=new WP_Query($args); if($query->have_posts()) : while ($query->have_posts()) : $query->the_post... 展开全文
  • wordpress文章自定义栏目使用

    2018-04-13 浏览:5523
    文章自定义栏目可以用来定义文章相关的属性、参数等属性 开启自定义栏目模块 勾选后在页面下方可以看到这个模块,在这里可以新增自定义的数据字段,并为它赋值 添加字段 页面调用 <?php $test = get_post_meta(get_the_ID(),'测试自定义',true); echo $test; ?> get_post_meta()函数详解 https://developer.wordpress.org/reference/functions/get_post_meta/ 展开全文
  • wordpress启用侧边栏小工具

    2018-04-11 浏览:5405
    wordpress后台默认不显示小工具选项,开发者需要启用小工具功能并把小工具在相应的前台位置调用出来,这样才能在后台直接拖动生成侧边栏。 激活小工具 激活小工具需要在functions.php中注册至少一个侧边栏 register_sidebar( array( 'name' => __( '默认侧边栏', 'Bing' ), 'id' => 'widget_default', 'description' => __( '侧边栏的描述', 'Bing' ), 'before_widget' => '<div class="widget ... 展开全文
  • wordpress文章自定义模板功能

    2018-04-11 浏览:5247
    该方法适用于4.7以及后续版本 在模板文件头部增加以下内容: <?php /* Template Name: page Template Post Type: post, page, product */ ?> 这样即可在post(文章)、page(页面)、product(产品)中使用该页面模板 展开全文
  • WordPress 多语言插件Polylang

    2018-04-08 浏览:7941
    添加语言 为文章添加多语言 为导航添加多语言 functions.php中开启自定义菜单 if(function_exists('register_nav_menus')){ register_nav_menus( array( 'header-menu' => __( '导航自定义菜单' ), ) ); } 添加语言切换按钮 输出ul标签 <?php pll_the_languages();?> 输出select下拉菜单 <?php $array = array( 'dropdown' => 1 ); pll_the_langu... 展开全文
  • 获取path中的变量 app.get('/api/:id', function (req, res) { console.log(req.params.id) }); 获取path中?xx=xx的变量 app.get('/api?name=a&tel=b', function (req, res) { console.log(req.query) }); 获取post中的变量 解析post数据需要用到body-parser第三方中间件 安装 $ npm install body-parser 使用 var bodyParser = require('body-parser') // 给app配置bodyParser中间件 // 通过如下配置再路由种处... 展开全文
  • 前期投入 1.注册域名 域名选择 域名后缀常用的有.com,.net,.org,当然也可以选择一些比较个性的如.top等。 .cn域名属于国家域名,由CNNIC管理,中国互联网络管理中心 (China Internet Network Information Center) 即CNNIC负责管理,因此不建议注册.cn域名。 域名注册机构 国内的有阿里(万网)、易名中国、西部数码、35互联等,国外的有Godaddy、Name等。 域名注册流程 首先通过域名注册商查询想要的域名是否已被注册,如未... 展开全文
  • 新建文件comments.php文件 <?php if (isset($_SERVER['SCRIPT_FILENAME']) && 'comments.php' == basename($_SERVER['SCRIPT_FILENAME'])) die ('Please do not load this page directly. Thanks!'); if ( post_password_required() ) { return; } ?> <div id="comments" class="comments-area"> <?php if ( have_comments() ) : ?> <h3 class="comments-title">... 展开全文