前端的发展趋势和路线,还有职业规划
1、项目这个东西一般分为二种,
1、为业务服务;
比如公司的内部项目,电商项目,app应用等;
2、为技术服务的;
例如,开源的应用、项目,工具框架等
第2种,一般提供一个或几个特定的功能,
可能 需要你对这个领域、范围有比较深的理解 ;
如果第一种,那么需要你对于【需求】有比较清晰的了解,
这种为业务服务的项目,它的面算是比较宽的。
不管第1、2种,都应该有相对完整的文档,但这只是理想状态。
现实当中,好多项目它其实并没有这些东西。
2、那么在开发的时候,首先要划分业务模块,再加组件化的思维方式。
<!-- 可能 有同学会觉得,你说这些吧,我也能想到,但是该怎么做呢? -->
<!-- 怎么叫理解需求呢? -->
<!-- 简单的说啊,因为太复杂的说就没有必要, -->
1、页面上有哪些功能?
2、页面上有哪些要求?
<!-- 功能和要求有啥区别? -->
功能,是设计图上表示 出来的。
要求,一般是从产品经理、ui设计那出来的。
<!-- 模块的划分 -->
看,模块的划分.png,
每一个蓝色的线框,就是一个模块。
这种划法只是一个粗略、大概的划分,在实际的开发过程中,
还要进一步明确。
3、<!-- 在代码上,怎么开始呢? -->
原生JavaScript,jQuery的:
<!-- 会先定义一个构造器,一般我个人喜欢原型模式 -->
function CartPageFn(){
this.....
tihs.init();
}
<!-- 各个模块写在prototype上 -->
CartPageFn.prototype = {
init(){....},
leftNave(){....},
topMenu(){
//...
},
columnFn(){
//...
},
轮播图(){
//....
}
}
new CartPageFn();
然后再接着写其它的逻辑代码,
4、如果你是使用VueJs来写,
首先就是menu.js
然后它里面引入 了App.vue
然后在app里面又引入 了其它的模块,
例如,
<template></template>
大概这么个写法
export default{
el : '#root',
data(){
return (.....)
},
methods:{
xxxfn(){...}
}
};
<style>...</style>
反正大概就这么个意思,然后一个又一个模块就这么写,
5、然后到了column或是轮播图,还有其它的模块,
都是像上面那么写。
这样的话,整个的逻辑就慢慢的丰满、展开了。
/**/
那么在整个项目的层面上,该怎么去设计它的结构呢?
看,设计它的结构.xmind
还是以vueJs为例,
<template></template>
<script>
export default {
name:'cartPage',
data(){
return {
datalist
}
},
created(){
运行getData方法,获得数据
axios.get('.../')
.then( _d =>{
this.datalist = _d.data;
} )
},
methods(){
createdDom(){
.....各种生成这那的》。。。
}
}
}
</script>
<style>...</style>
/*
接下来再怎么写,相信同学们都没有问题,
这半个小时左右的东西,主要是说,
1、怎么开始;
2、怎么举一返三;
*/
对于前端来讲,
基本上任何项目,都是从页面开始,