;

1.安装vee-validate cnpm install vee-validate –save 2.安装vue-i18n cnpm install vue-i18n –save 3.main.js中引入 import VeeValidate from ‘vee-validate’; import zh_CN from ‘vee-validate/dist/locale/zh_CN’ import VueI18n from ‘vue-i18n’; Vue.use(VueI18n) const i18n = new VueI18n({ locale: ‘zh_CN’, }) Vue.use(VeeValidate, { i18n, i18nRootKey: ‘validation’, dictionary: { zh_CN } }); 4.页面中使用 <input type="text" placeholder="邮箱" v-validate ="’required|email’" name="email"/> <span class="errortip" v-show="errors.has(’email’)&q…

vue表单验证,安装插件VeeValidate以及设置中文错误提示 2017年12月25日
;

1:url内存在一个’#’ 路径:router/index.js export default new Router({ mode:"history", //添加此配置选项 routes: [] }) 2.通过端口转发处理跨域 路径:config/index.js proxyTable: { ‘/api’: { target: ‘http://xxx.com’, changeOrigin: true, pathRewrite: {} }, ‘/service’:{} } 请求 this.$ajax.get(‘/api’).then(); //请求的正式地址为’http://xxx.com/api’ 注意:修改后需要重启服务,否则不生效

Vue中路由及跨域问题 2017年12月25日
;

1.安装 cnpm install axios –save 2.main.js中全局引入 import axios from ‘axios’ Vue.prototype.$ajax = axios 3.调用 this.$ajax.get(URL) .then((response)=>{ console.log(response); }) .catch((error)=>{ console.log(error); });

vue中安装axios来处理ajax 2017年12月25日
;

1.html部分 <ul v-model="menuNow" class="TabMenu clearfix"> <li class="fl" v-bind:class="{active:menuNow==’tab1′}" @click="setMenu(‘tab1′)">tab1</li> <li class="fl" v-bind:class="{active:menuNow==’tab2’}" @click="setMenu(‘tab2′)">tab2</li> <li class="fl" v-bind:class="{active:menuNow==’tab3’}" @click="setMenu(‘tab3’)">tab3</li> </ul> <div class="TabContent"> <tab1 v-if="menuNow === ‘tab1’">…

vue实现tab切换效果 2017年12月23日
;

<p> <input v-if="!showPass" type="password" v-model="password"/> <input v-if="showPass" type="text" v-model="password"/> <span v-if="!showPass" class="icon eye-slash" @click="showPass = !showPass"></span> <span v-if="showPass" class="icon eye" @click="showPass = !showPass"></span> </p> new Vue({ el: ‘body’, data: { showPass: false, password: ” } })

vue密码切换显示隐藏 2017年12月23日
;

步骤1:修改配置文件,末尾追加代码 /etc/ssh/sshd_config Subsystem sftp internal-sftp # This section must be placed at the very end of sshd_config Match Group sftponly ChrootDirectory %h ForceCommand internal-sftp AllowTcpForwarding no 含义:所有sftponly组用户将被限制在它们的主目录内,而且只能通过SFTP方式登录 #Subsystem sftp /usr/lib/openssh/sftp-server 对上面这一行加#注释 步骤2:创建sftponly分组 groupadd sftponly 步骤3:创建用户及密码 useradd obama passwd obama 步骤4:设置用户分组 usermod obama -g sftponly 步骤5:禁止SSH shell登录 usermod obama -s /bin/false 步骤6:设置用户主目录 mkdir -p /var/www/obama #-p确保目录名称存在,不存在的就建一个 usermod obama -d /var/www/obama #-d修改用户登入时的目录 步骤…

创建SFTP用户,并限制其访问上级目录 2017年12月19日
;

(function() { var h = {} , mt = {} , c = { id: "9ee4bb9d5bb1d41420031974fceab60f", dm: ["willless.com"], js: "tongji.baidu.com/hm-web/js/", etrk: [], icon: ”, ctrk: false, align: -1, nv: -1, vdur: 1800000, age: 31536000000, rec: 0, rp: [], trust: 0, vcard: 0, qiao: 0, lxb: 0, conv: 0, med: 0, cvcc: ”, cvcf: [], apps: ” }; var q = void 0 , r = !0 , t = null , u = !1; mt.cookie = {}; mt.cookie.set = function(a, b, d) { var f; d.H && (f = new Date, f.setTime(f.getTime() + d.H)); document.cookie = a + "=" + b + (d.domain ? &quo…

百度统计,源代码解读 2017年12月11日
;

首先到http://www.cz88.net/ 下载一个最新的ip库,安装ip库后会生成一个快捷方式,如下图所示: 点击打开后,出现下图界面: 点击解压,会生成一个20多兆的文本文件,打开或者下载一个UltraEdit打开,另存为utf-8的文本文档,这样可以防止出现乱码。在此之前我们要修改一下php.ini的配置,不然中途可能会出现一些错误 默认情况下:MySQL导入文件大小有限制的,最大为2M,所以当文件很大时候,直接无法导入,下面就这个问题的解决列举如下: 在php.ini中修改相关参数: 影响MySQL导入文件大小的参数有三个: memory_limit=128M,upload_max_filesize=2M,post_max_size=8M 我比较懒,直接将这三个都改成了128。 首先创建数据库 CREATE TABLE ip_data ( ipstart INT UNSIGNED NOT NULL, ipend INT UNSIGNED NOT NULL, region VARCHAR(50) NOT NULL, address VARCHAR(100) NOT NULL, PRIMARY KEY (ipstart, ipend) ) TYPE = MyISAM; 首先在PhpMyAdmin里手动建一个名称为ip_data的数据库…

利用纯真IP库建立mysql ip数据库 2017年12月1日
;

//形如这种,应该叫做unix时间戳, 1363737600000 //形如这种,我们称之为ISO-8601格式的时间 2017-09-28T16:00:00Z 一般跨时区的应用,数据库中都是存储这两种格式化的时间,前端根据自己所在的时区展示对用的本地时间 把unix时间戳格式化为本地时间,推荐使用moment.js moment.unix(1318781876).format(‘YYYY-MM-DD’) 把一个ISO时间根据时区转换,推荐使用使用moment.js //demo var date = ‘2017-09-28T16:00:00Z’; var timezone = ‘Asia/Shanghai’; moment(date).tz(timezone).format(‘YYYY-MM-DD hh:mm:ss’); 如果是在微信小程序中使用,你需要先去moment官方下载moment-timezone-with-data.js这个文件到你的小程序应用中 const moment = require("./moment-timezone-with-data"); var date = ‘2017-09-28T16:00:00Z’; var timezone = ‘"Asia/Shanghai’; momen…

跨时区时间转换 2017年11月28日
;

1.文件大小限制 路径:/etc/php5/apache2/php.ini 修改: upload_max_filesize = 30M post_max_size = 30M 同时memory_limit必须大于以上两项,重启服务器否则无法生效 相关文档:https://docs.phpmyadmin.net/en/latest/faq.html#faq1-16 2,文件导入报错‘Invalid column count in CSV input on line 1’ 导致此问题时因为表格的字段和数据库字段没有对应,修改之即可 数据库的ID主键要在数据导入完成后再添加

phpmyadmin导入svc文件的相关问题 2017年11月21日
;

1.一维数组排序 timeList=[‘2017-10-05′,’2017-10-01′,’2017-10-03′,’2017-10-02′,’2017-10-09′]; timeList.sort(); console.log(timeList); 2.对象数组的排序 sort方法接收一个函数作为参数,这里嵌套一层函数用来接收对象属性名,其他部分代码与正常使用sort方法相同 var arr = [ {name:’zopp’,age:0}, {name:’gpp’,age:18}, {name:’yjj’,age:8} ]; function compare(property){ return function(a,b){ var value1 = a[property]; var value2 = b[property]; return value1 – value2; } } console.log(arr.sort(compare(‘age’))) 当对日期排序就需要处理一下 var arr = [ {name:’zopp’,age:’2017-11-5′}, {name:’gpp’,age:’2017-11-9′}, {name:’yjj’,age:’2017-11-1′} ]; function compare(property)…

js中sort方法根据数组中对象的某一个属性值进行排序 2017年11月20日
;

这几天,网路上火了一位「小仙女」。 她的成名作,就是周杰伦演唱会的点歌环节Diss自己的前任:自称「小仙女」,说前任长得丑瞎了眼,让镜头拉近看看自己有多美,并点一首《算什么男人》,祝愿前任不孕不育子孙满堂。 结果呢,一场尬唱之后全微博嗷嗷叫好,说「小姐姐好酷」。 在这个话题之前,诸位E时代弄潮儿们还正在热情辱骂油腻的中年男性们,似乎每一个发声者本人都精致得不行。 说起来,什么算油腻呢?自称「小仙女」算不算,熟练使用网络流行语诅咒前任算不算,在别人演唱会上唱跑调的歌还嗷嗷哭算不算? 油腻这回事儿,是对自我显露与自我感动的极度狂热,它和年龄、性别都没有什么关系。 这位小仙女和油腻中年男人的区别,不过就是她戴兔子耳朵、别人盘手串而已。 01 中年人很惨,他们在网络上没有话语权的。 网络上的主流舆论,属于那些闹腾着的年轻人。就像之前的保温杯、广场舞和大妈一样,这些讨论可以说是一场针对中年人群体的互联网霸凌。 年轻人们在网络里叫嚣,看不起没长大的、嫌弃那些老去的。 如果说「油腻中年人」的具象化是盘串、秃头和大肚子,那「油腻年轻人」的具象化大概就是手机上的29个修图软件和出租屋里一米多高的外卖盒。 就像小张,不出门见人就不洗头,下楼拿快递时候穿着睡衣、披个外套就下楼了,实在脏得不行就再扣上帽子、戴上口罩,重点是遮住脸。 甚至小张现在头顶油得开始溢脂性脱发…

这位Diss前任的小仙女 就是油腻的中年女孩本人(转载) 2017年11月16日
;

服务器通过HTTP响应头Set-Cookie来告诉用户代理cookie的名、值、对应的路径、有效期等等,用户代理(一般就是浏览器)保存下来后,当向后端请求数据时,就会把对应的cookie放到请求头中发给服务器。 前端也可以通过JS来设置cookie。 所以只要设置好cookie之后,浏览器会自动在请求时附上cookie,并不需要你主动提交。 PHP中设置cookie PHP中设置Cookie的函数是setcookie(还有个setrawcookie并不常用)。 setcookie(‘hello’, ‘world’, time()+3600, ‘/test/’, ‘example.com’); 这样就设置了一个名为hello值为world,有效期为当前时间加上3600秒(也就是1个小时),域名为example.com,路径为/test/(代表只能在诸如http://example.com/test/a.php这样的路径下有效)的cookie。 具体参数请参考文档http://php.net/manual/zh/function.setcookie.php 服务器发送cookie 服务器会在响应的HTTP头中包含一个Set-Cookie头: Set-Cookie: hello=world; Expires=Sun, 13 Nov 2016 11:…

cookie的运行机制 2017年11月16日
;

人格测验(personality test)也称个性测验。测量个体行为独特性和倾向性等特征。最常用的方法有问卷和投射技术。问卷法由许多涉及个人心理特征的问题组成,进一步分出多个维度或分量表,反映不同人格特征。常用人格问卷有艾森克人格问卷(EPQ)、明尼苏达多项人格测验 (MMPI)和卡特尔16因素人格测验(16PF)。投射技术包括几种具体方法,如罗夏克墨迹测验、逆境对话测验、语句完成测验等。

人格测验 2017年11月10日
;

明尼苏达多项人格测验(Minnesota Multiphasic Per-sonality Inventory,简称MMPI)是由明尼苏达大学教授哈瑟韦(S.R.Hathaway)和麦金力(J.C.Mckinley)于40年代制定的,是迄今应用极广、颇富权威的一种纸-笔式人格测验。该问卷的制定方法是分别对正常人和精神病人进行预测,以确定在哪些条目上不同人有显著不同的反应模式,因此该测验最常用于鉴别精神疾病。 量表组成 10个临床量表 Hs:疑病(Hypochondriasis)——对身体功能的不正常关心 D:抑郁(Depression)——与忧郁、淡漠、悲观、思想与行动缓慢有关 Hy:癔病(Hysteria)——依赖、天真、外露、幼稚及自我陶醉,并缺乏自知力 Pd:精神病态(Psychopathic deviate)——病态人格(反社会、攻击型人格) Mf:男性化-女性化(Masculinity-femininity)——高分的男人表现敏感、爱美、被动、女性化;高分妇女看做男性化、粗鲁、好攻击、自信、缺乏情感、不敏感。极端高分考虑同性恋倾向和同性恋行为 Pa:妄想狂(Paranoia)——偏执、不可动摇的妄想、猜疑 Pt:精神衰弱(Psychasthenia)——紧张、焦虑、强迫思维 Sc:精神分裂(Schizophrenia)——思维混乱、…

明尼苏达多项人格测验 2017年11月10日
;

巴纳姆效应又称福勒效应,星相效应,是1948年由心理学家伯特伦·福勒通过试验证明的一种心理学现象,人们常常认为一种笼统的、一般性的人格描述十分准确地揭示了自己的特点,当人们用一些普通、含糊不清、广泛的形容词来描述一个人的时候,人们往往很容易就接受这些描述,却认为描述中所说的就是自己。正如一位名叫肖曼·巴纳姆的著名杂技师在评价自己的表演时说,他之所以很受欢迎是因为节目中包含了每个人都喜欢的成分,所以他使得“每一分钟都有人上当受骗”。20世纪50年代,心理学家保罗·米尔以著名的美国马戏团艺人菲尼亚斯·泰勒·巴纳姆的名字将弗瑞尔的实验结果命名为“巴纳姆效应”。

巴纳姆效应 2017年11月10日
;

<div id="app"> <navbar></navbar> <pagefooter></pagefooter> </div> Vue.component(‘navbar’,{ template:’#navbar’, data:function () { return { navs:[] } } }); Vue.component(‘pagefooter’,{ template:’#pagefooter’, data:function () { return { footer:” } } }); new Vue({ el:’#app’, mounted:function () { //ready, //这里怎么直接访问navbar的navs和pagefooter的footer值呢, } }) 这就用到ref了 修改组件 <div id="app"> <navbar ref="navbar"></navbar> <pagefooter ref="pagefooter"></pagefooter> </div> new …

vue中ref介绍 2017年11月8日
;

问题描述: ajax返回一个对象数组,页面内通过v-for输出,但是每个循环元素内要添加一个input输入框 提交时候,需要连同input值一起提交 初期思路 步骤: 1.直接对ajax返回的json对象数组通过for循环追加属性, 2.data变量在渲染以后结构发生变化,如何取值 解决方法: 1.ajax返回的结果先赋值给临时变量temp 2.通过for循环给temp数组内的对象添加新属性result 3.把temp赋值给projectList 表单提交时候: 通过 document.querySelectorAll(“.rusult_input”);获取到追加input的值,通过for再循环赋值 尝试改进: 1.用map函数处理数据 data.map(function(item){ item.show = false; }); 2.数据在created钩子中请求及追加 用map函数追加属性 getinfoList(){ this.$ajax.get(‘/service/check/15/LABS_CHECK?pageSize=1000’) .then((res)=>{ this.infoList=res.data.body.list; this.infoList.map(function(item){ if(…

对通过ajax返回的对象数组追加input并提交 2017年11月8日
;

无法提供摘要。这是一篇受保护的文章。

密码保护:wordpress介绍 2017年11月7日
;

1.echarts 报错 ‘There is a chart instance already initialized on the dom’ 在mounted里初次加载,然后在watch里监听数据变化, 两个事件内分别写上echarts.init就会有此警告 解决办法:data部分定义组件全局变量myCharts, 只在mounted内初始化:this.myCharts=echarts.init(document.getElementById(‘myCharts’)); 两个地方分别 setOption 2.JS空格报错 这是 ESLint,用来规范代码风格的 找到build文件夹下面的webpack.base.conf.js文件 找到rules部分 loader:’eslint-loader’ 注释之

vuejs问题总结(三):各种报错整理 2017年11月4日
;

1.组件引用 <template> <div class="content"> <h1>title</h1> <subcontent class="subcontent_style"></subcontent> </div> </template> <script> import lifeChart from ‘@/components/sub/subcontent’ export default{ name:’content’, data(){ return{} }, components:{ ‘lifeChart’:lifeChart }, methods:{} } </script> 2.组件内mounted,watch 如何调用methods中的方法 mounted() { this.getchart(); }, watch:{ searchchart:’getchart’ }, methods:{ getchart:function(){} } 3.vue中透明蒙层点击空白处关闭 <div class="mask" @click.self=&quot…

vuejs问题总结(二):组件内各种方法 2017年11月4日
;

npm安装模块 npm install xxx //利用 npm 安装xxx模块到当前命令行所在目录; npm install -g xxx //利用npm安装全局模块xxx; 本地安装时将模块写入package.json中: npm install xxx //安装但不写入package.json; npm install xxx –save //安装并写入package.json的”dependencies”中; npm install xxx –save-dev //安装并写入package.json的”devDependencies”中。 npm 删除模块 npm uninstall xxx //删除xxx模块; npm uninstall -g xxx //删除全局模块xxx; 后记: 1.uninstall卡死 直接删除 node_modules文件夹,然后修改package.json,然后重新npm install

npm常用命令 2017年11月2日
;

toUTCString() toISOString() http://www.jianshu.com/p/415f8c276388 https://segmentfault.com/a/1190000003710954?mType=Group https://segmentfault.com/a/1190000007581722 http://www.w3school.com.cn/jsref/jsref_obj_date.asp

时间相关函数 2017年11月1日
;

普通函数中的this: 1. this总是代表它的直接调用者, 例如 obj.func ,那么func中的this就是obj 2.在默认情况(非严格模式下,未使用 ‘use strict’),没找到直接调用者,则this指的是 window 3.在严格模式下,没有直接调用者的函数中的this是 undefined 4.使用call,apply,bind(ES5新增)绑定的,this指的是 绑定的对象 箭头函数中的this 默认指向在定义它时,它所处的对象(宿主对象),而不是执行时的对象, 定义它的时候,可能环境是window 要整明白这些, 我们需要首先了解一下作用域链: 当在函数中使用一个变量的时候,首先在本函数内部查找该变量,如果找不到则找其父级函数, 最后直到window,全局变量默认挂载在window对象下 1.全局变量默认挂载在window对象下 <script> var aa = 2; alert(window.aa); (function () { aa = 3; })(); alert(window.aa); </script> 我们仅仅声明了一个全局变量aa,但是打印出window.aa却和aa保持一致,为什么呢? 眼见为实, 我们使用 console.dir(window) …

深入理解ES6箭头函数的this 2017年10月31日