佳宸学习和分享笔记的地方

0%

1024程序员节+项目总结+日常

1024程序员节+项目总结+日常

今天程序员过节,自己呢,从学生向程序员慢慢进发了。

学习了一年多,觉得自己也算是入门前端这个领域了。虽然是很日常的一天,但纪念第一次有了从学生到程序员的认同感的节日是有意义的。

说说我今天日常的一天。

上午买了腾讯课堂的项目部署打折,这个商城项目写得也差不多了,在手机上测试了一下,修改了一些些bug

1.点击商品详情页商品信息重复没有刷新

是由于之前为了页面不刷新加了<keep-alive>导致所有页面重复加载就不会触发刷新。

在router index.js 文件下 meta: { keepAlive:false //不需要被缓存的组件 }在不需要缓存的页面加上配置。

在App.vue 文件下 对需要缓存的页面做一个判断

1
2
3
4
<keep-alive>
<router-view v-if="$route.meta.keepAlive" />
</keep-alive>
<router-view v-if="!$route.meta.keepAlive" />

2.如何在手机端调试写好的程序

  • 首先要在同一个局域网下,手机与电脑在同一个局域网内,把防火墙关了,防火墙是个大坑,试了好久

  • cmd终端命令ipconfig 查看无线网的IP地址,在config>index.js 配置下 host: '192.168.137.1', 域名改成你的IP

  • 请求接口配置文件也改成你的IPconst LOCALURL = "http://192.168.137.1:3000/"成功访问后台接口

  • 如果有json-server 模拟数据,在package.json=>scripts下把host改为0.0.0.0就可以让所有IP访问到

"json:server": "json-server --watch --host 0.0.0.0 --port 3001 goods.json"

项目总结

前期跟着老师视屏做,照着视频敲,学完后发现这个项目不太完善,页面很多功能都没做,老师的教程也结束了,烂尾了,在掘金看技术胖的赞那么多,觉得看他的视频总没错,只能说期望太高了。那就只有自己就把一些不满意的地方都改了,这样也好,能有自己思考的空间。

个人页面直接没讲,我就自己加了有赞的个人页面框架,把登陆注册加进去了。其他功能接口都没写。

1572017219183

购物车UI也做了相应优化,计算总价,checkbox。

1572017252727

商品详情统一用了vantUI组件,之前实在难看。

1572017542406

列表商品之前爬的图片链接失效,直接在后台把失效图片给洗了一遍。

1572017315053

使用axios请求,把能请求到的数据写入新文件,请求不到就抛弃。之前先存一个数组,再一概写进去这是不行的,会返回一个空数组。多个异步请求,函数直接返回了。

1
2
3
4
5
6
7
8
9
10
newData.map(async(value, index) => {
try {
let result = await axios.get(value.IMAGE1)
//console.log(value)
fs.appendFile('./data_json/newGoods2.json',JSON.stringify(value)+',',function(err, ret) {
if(err) {throw err}
})
} catch (err) {
console.log(err + 'bb')
}

也算彻底弄懂了JS的运行顺序,异步同步,宏任务微任务,还有async/await,看了几篇文章。以后再单独拿出来一篇文章总结把。

mongoDB数据库,增加了一个休闲食品类别,把食品饮料栏变为两栏,要不然这一栏的子分类太多了,还有一个白酒的分类,里面数据却全是生鲜,技术胖老师完全不走心。我全都改了。

后期,还要把首页的所有图片链接跳转商品详情给完善了,

1572017598297

1572017627898

第二天完善了

首页分类跳到分类详情,在分类栏绑定@click方法,传入ID值

1
2
3
4
goCategory(index){
//console.log(index)
this.$router.push({name:'CategoryList',params:{mallCategoryId:index}})
}

跳转到商品分类,然后在activated()钩子函数中把具体页号传过来,默认第一个

1
2
3
4
activated() {
let firstCategoryIndex = this.$route.params.mallCategoryId || 0
this.clickCategory(firstCategoryIndex, firstCategoryIndex + 1)
},

应用clickCategory方法点击到指定分类栏。

之前写在create()钩子中,没有效果,问题页面是keep-alive存在缓存,不会重新加载。

知识点: 钩子函数的执行顺序

使用keep-alive的初次加载顺序

beforeRouteEnter --> created --> mounted --> activated --> deactivated

再次进入缓存的页面,只会触发beforeRouteEnter -->activated --> deactivated

created和mounted不会再执行。

关于vue的路由还需要继续升入了解,现在知道的还太浅了。

之后学习一下怎么挂在服务器。


说一说傍晚的狗血京东校招

群里通知说今天晚上有京东的校招,下午赶紧把简历完善了去试试水。

兴致勃勃去那里,开始宣讲,先是说京东怎么待遇好,几万员工,什么环境,强东哥怎么怎么厉害。然后ppt开始显示京东顾问???我觉得好像是京东,不对劲,讲师开始宣传怎么当客服来了。三千一个月的京东客服,太会蹭京东的热点了,还只招客服3000一个月。。。“就没人提问了吗,都是家里有矿的可以走了”,然后我叫室友一起溜走了。本科生当客服,真有人愿意吗?纯体力活,不值得给强哥卖命,有时间还是学点真本事吧。

再说一说上周的狗血拓维

去拓维看热闹。校招招60个java,就5个前端,笔试题全是java,就只有两个前端题一个填空,数组合并字符串:arr.join(''),手写代码打点计时器用setinterval+闭包函数写了,交个白卷勾个前端,走了。

结果回来路上打电话,叫回去面试,面试官说他是团队LEADER,java后台但是懂一些前端。

面试官问我小程序生命周期,学了几个月我有点模糊忘记了,硬着头皮把vue生命周期说得头头是道,面试官说我‘说得不错’。

然后要我写个移动登陆布局,他rem都不知道,他觉得rem是栅格布局,跟他解释根元素字体大小都不懂,他把rem理解为栅格布局??

transform:translate也不知道我说是位移,他硬是说动画,我说动画是transition或者用animation可以实现,估计他没听懂,说我平常是不是复制粘贴。

我说我没有,我都是自己写代码,我觉得可能登陆布局没什么好证明实力的,立马给他手写了个双飞翼部。就叫我等通知就没有然后了。

我觉得根本不懂前端基础就来面试别人,不懂装懂批判别人很可耻,现场没有前端可以电话别的前端同事阿。

拉黑拓维公司,大一期末的时候,给粮食局装新系统,招实习生去装,我积极报名了,期末过后培训了三天结果还是水了我们四个大一的,就去了一个大一,其余都是大二大三一个没刷,根本没有一行代码,就是装系统体力活,凭什么刷我们低年级。

算是看透这个公司了,给政府,华为做外包,其美名曰:‘战略合作’。


吐槽归吐槽,毕竟二流本科,也没什么好资源,要怪也只能怪自己高中只有这个水平进这样的学校。有机会进来工作室,也算是一种幸运,看外面的世界,心态格局就跟班上有些还在浑浑噩噩度日不是一个档次了,努力努力争取跳出平凡。