今天心血来潮,因为我想养成一个写工作日志的习惯,每天晚上回家吃完饭写一下,一是对今天工作内容的一个总结,二是对工作中遇到的知识进行一个回顾,这个日志是写给自己的,大家也可以看,也就当我自己立下的一个flag。 ---大家可以叫我叶子,我是一个北漂Java程序员,目前在学VUE(因为工作需要)。
今天工作主要完成的内容是关于VUE前端框架中的动态路由配置和一级菜单渲染的工作。刚开始接触VUE就让我开始做VUE项目,我之前一点也没接触过,所以这些工作都是仿照之前的项目例子CV出来的。
但是也是有体会的,比如说***动态路由配置***是通过接口我可以拿到用户权限的数据,然后对数据处理,处理后的结果跟router/router.js中手动配置的静态路由的信息类似,最后将数据处理好的一个数组,通过router.addRoutes添加到路由中。(我发现他这个router也是前辈封装过的,不是原生的,但是我发现vue-router里面也有这个方法,那么我现在姑且的认为这个方法的作用,就是将数据放入都router.js中去的吧。)
***一级菜单的渲染***其实我对这里也不熟悉,直接将后台数据拿过来,测试了一下,就跑通了,我去查看渲染菜单的代码,前辈已经是层层抽象,组件组件再组件,对他的代码理解很差。不知道这块如何下笔去写。
成熟的代码我不懂,那么我就去学呗,《vue.js 实战》这本书官方推荐的,我看到第七章组件,那么今天我对这部分的理解又有哪些呢? 为什么用? 看项目代码我也发现,组件就是把能公用的东西抽取出来,多次复用,这样一来可以减少大篇幅代码,二来别的模块需要使用的同时可以不用CV,而是直接通过注册使用。
如何用? 上面也说了注册使用,注册也分为全局注册和局部注册。全局注册(一个一个注册嘛),所以是Vue.compotent('标签名',{ template: 'xxx', props: { menuList: { type: , //Number String Array Boolean default: , //数组的,对象默认返回函数default: function(){return []} //想String,Number之类的就是直接写就行 default: 'light' required: , //是否是必传的 true/false validator:function(value){return value>10;} } }, //如果需要父组件向子组件传数据的时候使用 data:function (){ return {}; }
})
有哪些特性?
1)父组件向子组件传数据 props
父组件使用v-on语法糖 :message去接受一个动态数据
子组件中定义props下面来一个message去接受数据
2)子组件向父组件传数据 this.emit('父组件中@后的名,例如@add的话也就是add',value参数)
例子:
这样父组件@add=“handleSomething”就会调用handleSomething这个方法,去做一些动作,
这样就形成了子组件与父组件数据之间的响应
收~~~~~~~~~~~
今天就写到这里吧,现在晚上9点16,我要去锻炼身体去了,跑跑步,写日志挺好的,晚上有时候也不想去看书,写写日志对今天的内容进行回顾,也比躺着玩好。 我坚持的第一天~~~~