慢慢写 不着急,遇见需要记录的就加上 查阅方法 ctrl+f
1.工具
Sourcetree 一款不错的git可视化工具
支持查看历史变动 谁提交的 仅需点击暂存 提交 拉取 上传 可代码块回滚
vscode 简洁功能齐全的编辑器
一款体积比较轻的编辑器,功能较少 但是编辑器内可直接下载大量插件 满足大部分开发需求,缺点是内存占用较高,搜索展开是列表形式,但是搜索速度较快 (内存足够的情况下 感觉vscode舒服的一批)
HBuilder
一款体积比较大的编辑器 打开编辑器需要等待一段时间,内存占用小于vscode 大于HBuilderX,搜索显示层级结构,
HBuilderX
HBuilder的下一代 轻量 快速方面提升 增强了很多功能
比如 支持 uni-app 小程序 快应用
可打包app
2.一些代码和使用方式
1.数字文字不换行
word-break: break-all;
2.样式穿透 a /deep/ b
即使在同一个页面 使用了scoped 就会给标签添加随机码,有随机码的表明是使用这个样式,通过添加的 没有随机码 不会吃到页面属性,所以可以 /deep/ 来穿透一下
3.height:calc(100% - 114px)
此属性可以计算100%的高度减去114px (100%自定义 )
4.v-model.trim
.trim 修饰符可以去除首尾空格(按空格 正常显示 但是会判定为空 并且展示的时候 没有首尾空格)
5.overflow-y: scroll
给当前标签增加竖向滚动 X是横向
6.display: none;
页面元素隐藏 可以隐藏滚动条
7.1>2 ? 1:2
三元运算符,1大于二? 是显示1 不是显示2
8. 数组变更后 页面不刷新 使用.push()
9.History.replaceState() 无痕替换路由
10.this.$router.replace('/') 不留记录
11.时间戳转化
import { formatTime } from '@/assets/js/xxx'
//export default下写
filters: {
timeFilter(t) {
return formatTime(t, 'yyyy-MM-dd')
}
},
// 美化时间
export const goodTime = (str) => {
let now = new Date().getTime()
let oldTime = new Date(str).getTime()
let difference = now - oldTime
let result = ''
let minute = 1000 * 60
let hour = minute * 60
let day = hour * 24
// let halfamonth = day * 15
let month = day * 30
let year = month * 12
let _year = difference / year
let _month = difference / month
let _week = difference / (7 * day)
let _day = difference / day
let _hour = difference / hour
let _min = difference / minute
if (_year >= 1) {
result = ~~_year + ' 年前'
} else if (_month >= 1) {
result = ~~_month + ' 个月前'
} else if (_week >= 1) {
result = ~~_week + ' 周前'
} else if (_day >= 1) {
result = ~~_day + ' 天前'
} else if (_hour >= 1) {
result = ~~_hour + ' 个小时前'
} else if (_min >= 1) {
result = ~~_min + ' 分钟前'
} else result = '刚刚'
return result
}
// 格式化日期
export const formatTime = (t, fmt) => {
if (!t) return undefined
let time = new Date(t * 1000)
let o = {
'M+': time.getMonth() + 1, // 月份
'd+': time.getDate(), // 日
'h+': time.getHours() % 12 === 0 ? 12 : time.getHours() % 12, // 小时
'H+': time.getHours(), // 小时
'm+': time.getMinutes(), // 分
's+': time.getSeconds(), // 秒
'q+': Math.floor((time.getMonth() + 3) / 3), // 季度
S: time.getMilliseconds() // 毫秒
}
let week = {
0: '天',
1: '一',
2: '二',
3: '三',
4: '四',
5: '五',
6: '六'
}
if (/(y+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (time.getFullYear() + '').substr(4 - RegExp.$1.length))
}
if (/(E+)/.test(fmt)) {
fmt = fmt.replace(RegExp.$1, (RegExp.$1.length > 1 ? (RegExp.$1.length > 2 ? '星期' : '周') : '') + week[time.getDay() + ''])
}
for (let k in o) {
if (new RegExp('(' + k + ')').test(fmt)) {
fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? o[k] : ('00' + o[k]).substr(('' + o[k]).length))
}
}
return fmt
}
3.一些知识点
vue中hash路由模式 路由链接是在#/后面显示的 在服务器中配置的404规则并不会生效 需要手动在前端配置,
{
path: '*',
redirect: '/404'
}
//重定向
去掉小数点后没用的0
a=parseFloat(a)