0基础如何进入IT行业?

简介:对于没有任何相关背景知识的人来说,如何才能成功进入IT行业?是否有一些特定的方法或技巧可以帮助他们实现这一目标?
方向一:学习路径

  1. 明确兴趣和目标:首先确定你对IT领域的兴趣和目标。IT行业非常广泛,包含了软件开发、网络管理、数据分析、人工智能等不同的领域。了解自己的兴趣和目标,可以帮助你选择适合的学习路径。

  2. 学习编程基础:无论你选择哪个领域,学习编程是一个重要的起点。掌握一门编程语言(如Python、JavaScript、Java等)和基本的编程概念(如变量、循环、函数等)是必要的。可以通过在线教程、编程学习平台、书籍等方式学习编程基础知识。

  3. 选择专业领域:根据自己的兴趣和目标选择IT领域中的一个专业方向,例如前端开发、后端开发、数据分析、网络安全等。针对选定的方向,深入学习相关的技术和知识,并进行实际项目练习。

方向二:技能培养

  1. 参加培训课程或学位课程:如果你想获得更系统化的学习经验,可以考虑参加IT培训班或报读相关的学位课程。这些课程通常会提供更深入的知识和实践机会,并且可以获得认可的证书或学位,有助于增加就业竞争力。

  2. 做项目和实践:在学习过程中,尽量多做一些项目和实践练习,以实际应用所学知识。可以参与开源项目、自己构建小型应用程序或者参加一些编程比赛,这样可以展示你的技能并积累宝贵的经验。

  3. 建立专业网络:参加一些IT行业的活动、交流会议或者加入相关的社群,与从业者建立联系,并从他们那里获取指导和支持。与其他人分享你的学习和项目经验,也可以帮助你扩展专业网络。

  4. 持续学习和跟进技术发展:IT行业发展迅速,新技术和工具层出不穷。要保持竞争力,需要持续学习和跟进最新的技术趋势。关注行业动态、阅读技术文章、参加在线课程或研讨会,都是不断学习的好方法。

最后祝愿大家能够学有所成,学有所用!

那么好,咱们回归正传。这一节将实践一个综合案例,结合了前面所学的知识。

实例:记账本

实现功能:

1. 基本渲染:基于后端数据动态渲染;

2. 添加功能:通过表单元素向后端添加数据;

3. 删除功能:通过删除按钮动态删除后端数据;

4. 饼图渲染:基于渲染数据使用饼图可视化。

5. 生命周期钩子函数灵活运用

思路:

这一个案例的前提要求便是获取并修改后端数据,这一点是最为重要的!

axios 简介

axios 是一个基于Promise 用于浏览器和 nodejs 的 HTTP 客户端,它本身具有以下特征:

支持原生 TypeScript

请求响应拦截

支持 node.js

从浏览器中创建 XMLHttpRequest

支持 Promise API....

导入:

//使用npm
npm install axios
//使用yarn
yarn add axios
//或者使用cdn:
<script src="https://unpkg.com/axios/dist/axios.min.js"></script>

发起GET请求:

axios.get('https://api.example.com/data')
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});

发起POST请求:

axios.post('https://api.example.com/submit', { username: 'john', password: 'secret' })
.then(response => {
console.log(response.data);
})
.catch(error => {
console.error(error);
});

您还可以在请求中设置其他参数,如请求头、请求参数等。例如:

axios.get('https://api.example.com/data', {
headers: {
'Authorization': 'Bearer token'
},
params: {
page: 1,
limit: 10
}
})

饼图可视化:

了解了axios如何请求和修改后端数据,咱们来学习下如何进行饼图可视化。

在Vue.js中渲染饼图通常使用一些流行的数据可视化库,比如Chart.js或者ECharts。本案例中,我们使用了ECharts来渲染。

ECharts是一个使用 JavaScript 实现的开源可视化库,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等)及兼容多种设备,可随时随地任性展示。ECharts 提供了丰富的图表类型和交互能力,使用户能够通过简单的配置生成各种各样的图表,包括但不限于折线图、柱状图、散点图、饼图、雷达图、地图等,可高度个性化定制的数据可视化图表。

导入:

<script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>

使用:

在绘图前我们需要为Echarts准备一个具备宽高的DOM容器,然后通过echarts.init方法初始化一个Echarts实例并通过setOption方法生成一个简单的图型,下面是完整代码:

<template>
<div ref="pieChart" style="width: 600px; height: 400px;"></div>
</template>
<script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>
<script>
export default {
mounted() {
this.renderPieChart();
},
methods: {
renderPieChart() {
const chartDom = this.$refs.pieChart;
const myChart = echarts.init(chartDom);
const option = {
series: [{
type: 'pie',
data: [
{ value: 335, name: '直接访问' },
{ value: 310, name: '邮件营销' },
{ value: 234, name: '联盟广告' },
{ value: 135, name: '视频广告' },
{ value: 1548, name: '搜索引擎' }
]
}]
};
myChart.setOption(option);
}
}
};
</script>

代码:

html:

<div id="app">
<div class="top">
<input v-model="name" placeholder="消费名称">
<input v-model="price" placeholder="消费金额">
<button @click="add()">添加条目</button>
</div>
<div class="table">
<table>
<header>
<tr>
<th>编号</th>
<th>消费名称</th>
<th>消费金额</th>
<th>操作</th>
</tr>
</header>
<tbody>
<tr v-for="(item, index) in list" :key="item.id">
<td>{{ index+1 }}</td>
<td>{{ item.name }}</td>
<td :class="{red: item.price > 500}">{{ item.price.toFixed(2) }}</td>
<td><button @click="del(item.id)">删除</button></td>
</tr>
</tbody>
<footer>
<tr>
<td colspan="4" style="text-align: left;">消费总计:{{ total.toFixed(2) }}</td>
</tr>
</footer>
</table>
</div>
<!-- 准备好具备大小的DOM -->
<div id="chart"></div>
</div>

js:

<script>
const app = new Vue({
el: '#app',
data: {
list:[],
name:'',
price:''
},
computed: {
total(){
return this.list.reduce((sum,item) => sum + item.price,0)
}
},
created(){
// 使用添加/删除功能后,需要重新渲染,将下列封装为函数更为高效
// let res = await axios.get('https://xxx',{
// params:{
// creator: '李世民'
// }
// })
// // console.log(res)
// this.list = res.data.data
this.addList()
},
mounted(){
// 创建echart实例
this.myChart = echarts.init(document.querySelector('#chart'))
//配置数据
this.myChart.setOption({
title: {
text: '我的消费账单',
left: 'center'
},
tooltip: {
trigger: 'item'
},
legend: {
orient: 'vertical',
left: 'left'
},
series: [{
name: '明细',
type: 'pie',
radius: '50%', //半径
data: [], //匹配后台数据,默认为空
emphasis: {
itemStyle: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}]
})
},
methods: {
async addList(){
// 发送请求,获取数据
let res = await axios.get('https://xxx',{
params:{
creator: '小白'
}
})
this.list = res.data.data
// 获取数据后,重新配置饼图的数据,更新图表
this.myChart.setOption({
// 仅需要配置数据项
series: [{
data: this.list.map(item => ({value: item.price, name: item.name})),
}]
})
},
async add(){
// 发送请求,修改数据
let res = await axios.post('https://xxx',{
creator: '小白',
name: this.name,
price: this.price
})
console.log(res)
// 重新渲染页面
this.addList()
this.name = ''
this.price = ''
},
async del(id){
// 发送请求,根据ID修改数据
let res = await axios.delete(`https://xxx/${id}`)
console.log(id)
// 重新渲染页面
this.addList()
}
}
})
</script>

css:

<style>
table{
width: 500px;
margin-top: 10px;
border-collapse: collapse;
}
th, td{
height: 30px;
text-align: center;
line-height: 20px;
border: 1px solid black;
}
#chart{
width: 500px;
height: 400px;
margin-top: 20px;
border: 1px solid black;
}
.red{
color: red;
}
</style>

效果:

注意:

案例中还有很多需要注意的点,比如: 应该是在created()里使用axios获取后端数据然后渲染,但是使用添加/删除功能后,还需要重新渲染,但是这已经不属于created()钩子范围内,所以将axios的get方法封装为函数使用更为高效。

Vue学习:13.生命周期综合的更多相关文章

  1. vue学习之生命周期和钩子函数

    参考文章:Vue2.0 探索之路——生命周期和钩子函数的一些理解 抛出问题: 我们有时候会在几个钩子函数里做一些事情,那么什么时候做,该在哪个函数里做? 生命周期简介 结合代码看el 和 data以及 ...

  2. vue学习之五生命周期

    一.vue生命周期图解 下图展示了实例的生命周期.你不需要立马弄明白所有的东西,不过随着你的不断学习和使用,它的参考价值会越来越高. 二.vue钩子函数使用 2.1beforeCreate 在实例初始 ...

  3. vue学习三:生命周期钩子

    生命周期钩子介绍: 每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听.编译模板.将实例挂载到 DOM 并在数据变化时更新 DOM 等.同时在这个过程中也会运行一些叫做生 ...

  4. Vue学习之生命周期钩子小结(四)

    一.生命周期钩子(函数): 1.每个 Vue 实例在被创建时都要经过一系列的初始化过程——例如,需要设置数据监听.编译模板.将实例挂载到 DOM 并在数据变化时更新 DOM 等.同时在这个过程中也会运 ...

  5. vue学习笔记(二) ---- vue实例的生命周期

    vue实例的生命周期 什么是生命周期:从Vue实例创建.运行.到销毁期间,总是伴随着各种各样的事件,这些事件,统称为生命周期! 生命周期钩子:就是生命周期事件的别名而已: 生命周期钩子 = 生命周期函 ...

  6. vue02 过滤器、计算和侦听属性、vue对象的生命周期、阻止事件冒泡和刷新页面

    3. Vue对象提供的属性功能 3.1 过滤器 过滤器,就是vue允许开发者自定义的文本格式化函数,可以使用在两个地方:输出内容和操作数据中. 定义过滤器的方式有两种. 3.1.1 使用Vue.fil ...

  7. Vue01 Vue介绍、Vue使用、Vue实例的创建、数据绑定、Vue实例的生命周期、差值与表达式、指令与事件、语法糖

    1 Vue介绍 1.1 官方介绍 vue是一个简单小巧的渐进式的技术栈,它提供了Web开发中常用的高级功能:视图和数据的解耦.组件的服用.路由.状态管理.虚拟DOM 说明:简单小巧 -> 压缩后 ...

  8. Vue.js-07:第七章 - Vue 实例的生命周期

    一.前言  在之前的 Vue 学习中,我们在使用 Vue 时,都会创建一个 Vue 的实例,而每个 Vue 实例在被创建时都要经过一系列的初始化过程.例如,需要设置数据监听.编译模板.将实例挂载到 D ...

  9. vue 项目实战 (生命周期钩子)

    开篇先来一张图 下图是官方展示的生命周期图 Vue实例的生命周期钩子函数(8个)        1. beforeCreate             刚 new了一个组件,无法访问到数据和真实的do ...

  10. 从零开始学 Web 之 Vue.js(三)Vue实例的生命周期

    大家好,这里是「 从零开始学 Web 系列教程 」,并在下列地址同步更新...... github:https://github.com/Daotin/Web 微信公众号:Web前端之巅 博客园:ht ...

随机推荐

  1. hyengine - 面向移动端的高性能通用编译/解释引擎

    ​简介:手机淘宝客户端在历史上接过多种多样的脚本引擎,用于支持的语言包括:js/python/wasm/lua,其中js引擎接过的就有:javascriptcore/duktape/v8/quickj ...

  2. Apsara Stack 技术百科 | 标准化的云时代:一云多芯

    ​简介:随着今年云栖大会现场平头哥的自研云芯片倚天710发布,以及众多新兴厂商的芯片发布,将有越来越多的类型芯片进入到主流市场,"多芯"的架构将在数据中心中越来越常见,阿里云混合云 ...

  3. 【视频特辑】提效神器!如何用Quick BI高效配置员工的用数权限

    ​简介:随着企业数字化进程逐步加速,企业所产生和积累的数据资源日益增多.每当员工的用数权限发生变动,管理员都需要进行复杂繁琐的重复性配置流程,不仅耗时耗力还容易出错. 如何能便捷地对员工用数权限进行高 ...

  4. [ELK] 生产环境使用 Elasticsearch Docker 镜像的优化选项

    [ 配置内核设置 vm.max_map_count 至少为 262144 ] https://www.elastic.co/guide/en/elasticsearch/reference/curre ...

  5. dotnet 6 数组拷贝性能对比

    本文来对比多个不同的方法进行数组拷贝,和测试其性能 测试性能必须采用基准(标准)性能测试方法,否则测试结果不可信.在 dotnet 里面,可以采用 BenchmarkDotNet 进行性能测试.详细请 ...

  6. WordPress CVE-2022-4230复现分析

    前言 开始CVE审计之旅 WP Statistics WordPress 插件13.2.9之前的版本不会转义参数,这可能允许经过身份验证的用户执行 SQL 注入攻击.默认情况下,具有管理选项功能 (a ...

  7. grid布局方案

    前言 CSS网格布局用于将页面分割成数个主要区域,或者用来定义组件内部元素间大小.位置和图层之间的关系.像表格一样,网格布局让我们能够按行或列来对齐元素. 但是,使用CSS网格可能还是比CSS表格更容 ...

  8. 5GC 关键技术之 MEC 边缘计算

    目录 文章目录 目录 前文列表 MEC 边缘计算 ETSI MEC 标准化参考模型 MEC 架构设计原则 MEC 分层架构 MEC 系统架构 MEC 软件架构 MEC in NFV 融合架构 ETSI ...

  9. Kmesh进入CNCF云原生全景图,实现网格治理sidecarless化

    本文分享自华为云社区<Kmesh进入CNCF 云原生全景图> ,作者:云容器大未来. 近日,Kmesh 正式进入 CNCF 云原生全景图,位于 Service Mesh 类别下. CNCF ...

  10. pod(二):创建包含多个容器的pod(sidecar)

    目录 一.系统环境 二.前言 三.创建包含多个容器的pod 3.1 环境介绍 3.2 在一个pod里创建多个容器 一.系统环境 服务器版本 docker软件版本 CPU架构 CentOS Linux ...