1、导出所有库系统命令行mysqldump -uusername -ppassword --all-databases all.sql
2、导入所有库mysql 命令行mysql source all.sql;
3、导出某些库系统命令行mysqldump -uusername -ppassword --databases db1 db2 db1db2.sql
4、导入某些库mysql命令行mysql source db1db2.sql;
5、导入某个库系统命令行mysql -uusername -ppassword db1 db1.sql;
或mysql命令行mysql
创建表
CREATE TABLE `kfinfo` (
`Name` varchar(100) DEFAULT NULL,
`CardNo` varchar(50) DEFAULT NULL,
`Descriot` varchar(150) DEFAULT NULL,
`CtfTp` varchar(50) DEFAULT NULL,
`CtfId` varchar(50) DEFAULT NULL,
`Gender` varchar(50) DEFAULT NULL,
`Birthday` varchar(50) DE
MYSQL导入数据出现The MySQL server is running with the --secure-file-priv option so it cannot execute this statement
查看 secure-file-priv 当前的值是什么
show variables like '%secure%';
那么我们就需要改配置文件my.ini
secure-file-priv=''
重启MySQL
2018年7月25日,Mislav Marohnić在推文中宣布GitHub前端已经彻底删除jQuery依赖,并全部依赖原生API。
可见的未来,很多jQuery插件会被ES5+重写,下面介绍一下原生javascript插件的写法:
插件需要满足的条件
一个可复用的插件需要满足以下条件:
插件自身的作用域与用户当前的作用域相互独立,也就是插件内部的私有变量不能影响使用者的环境变量;
插件需具备默认设置参数;
插件除了具备已实现的基本功能外,需提供部分API,使用者可以通过该API修改插件功能的默认参数,从而实现用户自定义插件效果;
插件需提供监听入口,及针对指定元素进行监听,
在实际资源操作中,总会有一些不符合 CRUD(Create-Read-Update-Delete) 的情况,一般有几种处理方法。1. 使用 POST 为需要的动作增加一个 endpoint,使用 POST 来执行动作,比如: POST /resend 重新发送邮件。2. 增加控制参数 添加动作相关的参数,通过修改参数来控制动作。比如一个博客网站,会有把写好的文章“发布”的功能,可以用上面的 POST /articles/{:id}/publish 方法,也可以在文章中增加 published:boolean 字段,发布的时候就是更新该字段 PUT /articles/{:id}?publish
用单数形式更佳,理由如下:
1、概念直观。
你有一个袋子,里面有好多个苹果,你会说这是个苹果袋。但无论里面有0,1,百万个苹果,它依然是个袋子。表也是如此,表明需要描述清楚,表里面包含的对象,而非有多少个数据。
2、便利性
单数形式更简单。有一些单词,它的复数形式可能是非常规的,或者就没有复数形式,但是单数不一样,单数形式则没那么多讲究。有些单词的复数,可能会想到你头大,可能得好好google才出来
3、优雅
特别是一些master-detail形式的资源名称,统一用单数,读起来更方便,对齐更整齐,从顺序上更有逻辑性。
对比下
单数:
Order
OrderDeta
使用webpack项目打包以后的项目在Chrome、Safari 下运行正常,但是在IE11下运行失败!提示 vuex requires a Promise polyfill in this browser。
一脸迷惑,原来是这样的。babel默认只转换语法,而不转换新的API,如需使用新的API,还需要使用对应的转换插件或者polyfill。例如,默认情况下babel可以将箭头函数,class等语法转换为ES5兼容的形式,但是却不能转换Map,Set,Promise等新的全局对象,这时候就需要使用polyfill去模拟这些新特性
babel-polyfill
原理是当运行环境中并没
Babel 的官网上在2017年9月宣布 ES2015 / ES2016/ ES2017 等等 ES20xx 时代的 presets 通通被废弃(deprecated),取而代之的是 babel-preset-env,并且承诺它将成为“未来不会过时的(future-proof)”解决方案。
babel-preset-env 是一个新的 preset,可以根据配置的目标运行环境(environment)自动启用需要的 babel 插件。
目前我们写 javascript 代码时,需要使用 N 个 preset,比如:babel-preset-es2015、ba
为什么使用 HtmlWebpackPlugin
使用webpack命令打包,默认是不能生成html文件的,我以前的解决方法,就是在webpack output的目录中,添加一个index.html文件,index.html文件的内容如下:
!DOCTYPE html
html lang="zh-cn"
head
title 首页 /title
meta charset="utf-8"
meta name="viewport" content="width=device-width, initial-scale=1, minimal-ui"
2020年开始,本模块貌似要停止维护了 https://github.com/request/request,node.js 的http模块就已经很好了。这篇就先介绍一个Node.js的模块——request。有了这个模块,http请求变的超简单。var request = require('request');
request('http://www.google.com', function (error, response, body) {
if (!error && response.statusCode == 200) {
console.log(b
编写爬虫时,需要HTMLParser解析HTML,HTML本质上是XML的子集,但是HTML的语法没有XML那么严格,所以不能用标准的DOM或SAX来解析HTML。现在流行很多解析器,综合一下比较看好 cheerio 和 jsdom。 cheerio简单好用速度快,JSDOM的目标是提供一个我们在浏览器里面看到的相同的 DOM 环境。支持最新的javascript选择器。 安装npm install cheerio HTML示例 ul id=“fruits”
li class=“apple” Apple /li
li class=“orange” Orange /li
网络爬虫,又称为网页蜘蛛、网络机器人或网页追逐者,是一种按照预定规则自动抓取万维网信息的程序或脚本。其核心功能在于能够自动化浏览网络并获取数据,这些数据可以是网页内容、图片、视频等多种形式的信息。爬虫在工作时会根据开发者设定的规则(爬虫算法)来遍历网页链接,获取页面内容,解析所需数据,并常常进一步存储或分析这些数据。
爬虫的基本组成部分及流程:
获取网页:爬虫首先向目标网站发送HTTP请求,就像我们在浏览器中输入网址并按下回车键一样。这个过程涉及遵循robots.txt文件规定,尊重网站的爬取规则。
解析网页:获取到网页内容后,爬虫会使用HTML解析器(如BeautifulSoup、l
CSS Reset 是革命党,CSS Reset 里最激进那一派提倡不管你小子有用没用,通通给我脱了那身衣服,凭什么你 body 出生就穿一圈 margin,凭什么你姓 h 的比别人吃得胖,凭什么你 ul 戴一胳膊珠子。于是 *{margin:0;} 等等运动,把人家全拍扁了。看似是众生平等了,实则是浪费了资源又占不到便宜,有求于人家的时候还得贱贱地给加回去,实在需要人家的默认样式了怎么办?人家锅都扔炉子里烧了,自己看着办吧。
Normalize.css 是改良派。他们提倡,各个元素都有其存在的道理,简单粗暴地一视同仁是不好的。body 那一圈确实挤压了页面的生存空间,那就改掉。士农工商,

将图片文件转换为base64编码并载入浏览器能够减少http请求数,但是增大了js或html文件的体积,如果图片在项目中的重用度较高,那么每处引用都会生成base64编码,造成了代码的冗余。通过http请求载入到浏览器的文件可以缓存到本地,当图片在项目中的重用度较高时,会为图片的访问增加缓存的便利性,下次访问更快。因此要平衡考虑。
Install
npm install --save-dev url-loader
Usage
url loader与file loader的工作方式相似,但如果文件的体积比byte limit小,就能返回Data Url。
需要用一个查询参数(qu
一,删除Node.js的方法卸载node 依次在终端执行下面的脚本sudo npm uninstall npm -g
sudo rm -rf /usr/local/lib/node /usr/local/lib/node_modules /var/db/receipts/org.nodejs.*
sudo rm -rf /usr/local/include/node /Users/$USER/.npm
sudo rm /usr/local/bin/node
sudo rm /usr/local/share/man/man1/node.1
sudo rm /usr/local/lib/
前两种方法需要设置路由history模式,后两种方法貌似更合适。
方法一:
1.在router.js里面(即路由文件中),此时模式为 history
const router = new VueRouter({
mode: 'history',
routes,
scrollBehavior (to, from, savedPosition) {
if (savedPosition) {
return savedPosition
} else {
if (from.meta.keepAlive) {
实现难点
如何判断切换路由时是前进还是后退
每次向左向右切换动画如何实现
解决方案
我们需要给各个页面定义层级,在切换路由时判断用户是进入哪一层页面,如果用户进入更高层级那么做前进动画,如果用户退到低层级那么做后退动画.
router/index.js
import VueRouter from 'vue-router'
import Home from '../components/home/home'
import User from '../components/user/user'
var router = new VueRouter({
routes
CSS实现单行、多行文本溢出显示省略号(…)
如果实现单行文本的溢出显示省略号同学们应该都知道用text-overflow:ellipsis属性来,当然还需要加宽度width属来兼容部分浏览。
实现方法:
overflow: hidden;
text-overflow:ellipsis;
white-space: nowrap;
效果如图:
但是这个属性只支持单行文本的溢出显示省略号,如果我们要实现多行文本溢出显示省略号呢。
接下来重点说一说多行文本溢出显示省略号,如下。
实现方法:
display: -webkit-box;
-webkit
Audio对象的属性
属性
描述
audio.volume
(读/写) 音量
audio.src
(读/写) 歌曲地址
audio.currentTime
(读/写) 歌曲当前已播放时长
audio.duration
(读) 歌曲的总长度
audio.paused
(读) 布尔类型 是否处于暂停状态
audio.ended
(读) 布尔类型 歌曲是否已经播放完毕
Audio对象的方法
方法
描述
audio.play()
让歌曲开
所有标签