前端生成文档
前端生成文档需要插件file-saver、html-docx-jsyarn add file-saver --save
yarn add html-docx-js --save
生成方式主要通过将html代码转化成文档
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
</head>
<body>
<div onclick="gogogo()">下载</div>
</body>
<script src="./node_modules/file-saver/dist ...
新疆纤检项目总结
使用技术vue2.0 + element + axios + vue-router + vuex + pdf.js
项目概要新疆维吾尔自治区纤维质量监测中心的一个用来管理培训的项目从用户的角度来说一共有两种:管理人员和用户(用户分为企业用户和个人用户)主要的功能是对用户进行培训开班,可以理解为一个报名系统。还有一些附带的功能。
培训管理系统
知识库
信用平台
统一登录平台
培训管理系统普通管理系统 O(∩_∩)O哈哈~
系统管理
菜单管理
角色管理
用户管理
资源分配
首页
培训管理
班级管理
证书管理
订单管理
财务管理
通过角色分配不同的菜单,进入对应的角色页面
知识库知识库分页用户查看页面和后台页面
后台
首页
标准管理
全部标准
录入标准
分类
回收站
查看页面主要功能
查看后台增加的标准
查看pdf这里有个查看pdf并且不让下载打印,使用到pdf.js,然后再插件里面通过js控制不让打印<script type="text/javascript">
// function stop() {
// ...
管理系统的菜单和路由
前端菜单和路由菜单
直接前端写死菜单
根据路由来渲染
路由
前端直接写死
后端返回
根据路由渲染的菜单怎么区分哪些是菜单前端直接写死在写路由的时候可以加上属性 hidden: true如果 hidden是true的时候我们就不把这个路由显示为菜单
{
path: '/enterprise',
component: Layout,
name: 'enterprise',
meta: { title: '企业管理', icon: 'product' },
children: [{
path: 'information',
name: 'information',
component: () => import('@/views/enterprise/information'),
meta: { title: '企业信息' },
hidden: false
},
{
path: 'd ...
关于面试
面试注意事项
要写清楚自己会哪些东西
要把上家公司描述清楚,做什么业务的,项目来源于什么
工作经历,尽量详细,具体到做了什么项目,用了什么技术
项目要写清楚项目交付结果或者上线反应
注意写的时候不要有读的有问题的介绍
投简历可以多投,投放时间尽量在上班时间
面试可以多接受,去不了的可以要求视频面或者电话面
面试过程中不要紧张,把自己当做一个工作很多年的工作者,听清楚面试官说的话。没听清或者不懂的地方可以再问面试官
面试官问一个问题以后如果你知道后面涉及到的问题尽量往深了说、尽量详细、逻辑要清楚。
如果面试官问的问题确实不会,就说这方面的东西没有用到过(但是不要是非常常见的知识点哈),不太清楚,稍后会去了解。
面试前要多刷题,如果面试官问你平常怎么学习,你就说看文档,买课看视频都可以。
面试完成以后要立即把面试官问的问题记录下来,并且找到答案。然后总结一下面试
我面试的套路
我会让面试者先自我介绍,然后根据他的介绍引出问题。
要求:
个人信息
上家公司是做什么的
团队的组成和运作方式
掌握哪些技术
讲一个简历上的项目(项目是做什么的,怎么搭建,用了什么技术以及使用目的,项目是否交付 ...
网络基础
网络数据传输方式一层一层的打包 然后一层一层的解析
发送者的数据从应用层到传输层 会增加TCP Header (端口)
然后到网络层 会增加IP header (IP地址)
然后到链路层 会增加以太网 Header (MAC地址) 通过传输介质到接收者
以太网发现有个 以太网的Header 就把这个包给对应的MAC地址
然后传到网络层 IP协议解析这个包 找到对应的IP地址 发送过去
然后传到传输层 解析到端口 传给对应端口的应用
以太网
网卡和MAC地址MAC地址: 00-05-5D-E8-0F-A3交换机就是根据MAC地址转发数据的
电脑通过网卡连接网络
每块网卡有个厂商设定的MAC地址(又称物理地址)
这个地址是设备的唯一标识
网卡的MAC地址可以通过驱动改变(只要在同一个链路里面没有相同的话不会有影响)
以太网的Header
目标MAC地址(6字节)
源MAC地址(6字节)
类型 (2字节)
数据(46~1500字节)
FCS(4字节,帧检验序列)
IP协议IP地址
又32位二进制数组成
分为网络标识和主机标识两部分
子网掩码确定了32位里面哪些是主机标识哪些是 ...
前端常见面试题
vue单页面应用(SPA) 是加载单个 HTML 页面并在用户与应用程序交互时动态更新该页面的。它将所有的活动局限于一个 Web 页面中,仅在该 Web 页面初始化时加载相应的 HTML 、 JavaScript 、 CSS 。一旦页面加载完成, SPA 不会因为用户的操作而进行页面的重新加载或跳转,而是利用 JavaScript 动态的变换 HTML(采用的是 div 切换显示和隐藏),从而实现UI与用户的交互。在 SPA 应用中,应用加载之后就不会再有整页刷新。相反,展示逻辑预先加载,并有赖于内容Region(区域)中的视图切换来展示内容。
优点
有良好的交互体验能提升页面切换体验,用户在访问应用页面是不会频繁的去切换浏览页面,从而避免了页面的重新加载; 2. 前后端分离开发单页Web应用可以和 RESTful 规约一起使用,通过 REST API 提供接口数据,并使用 Ajax 异步获取,这样有助于分离客户端和服务器端工作。更进一步,可以在客户端也可以分解为静态页面和页面交互两个部分; 3. 减轻服务器压力服务器只用出数据就可以,不用管展示逻辑和页面合成,吞吐能力会 ...
docker
docke常用命令:
命令
意义
docker pull <镜像名称>
获取镜像
docker run -it <镜像名称> /bin/bash
启动容器
exit
退出终端
docker ps -a
查看所有的容器
docker rm -f <容器id>
删除容器
docker start
docker start b750bbbcfd88
docker run -itd –name ubuntu-test ubuntu /bin/bash
后台运行
docker stop <容器 ID>
停止一个容器
docker restart <容器 ID>
重启一个容器
docker attach <容器 ID>
退出容器(会停止)
docker exec -it <容器 ID> /bin/bash
进入出容器(不会停止)
exit
退出容器
docker export <容器 ID> > <容器名称>.tar
导出容器 ...
nginx学习
主要配置 conf更改配置以后需要重启
docker restart nginx
server {
// 根据你的需求改变此端口
listen 80; //也可以是1.2.3.4:80的形式
// 多个主机名可以用空格隔开,当然这个信息也是需要按照你的需求而改变的。
server_name star.yourdomain.com *.yourdomain.com www.*.yourdomain.com;
//或者可以使用:_ * (具体内容参见本维基其他页面)
root /PATH/TO/WEBROOT/$host;
alias
error_page 404 // http://yourdomain.com/errors/404.html;
access_log logs/star.yourdomain.com.access.log;
location / {
root /PATH/TO/WEBROOT/$host/; // 项目的存放地址
index index.html ...
extends和implements区别
extends与implements的不同
在类的声明中,通过关键字extends来创建一个类的子类。一个类通过关键字implements声明自己使用一个或者多个接口。extends 是继承某个类, 继承之后可以使用父类的方法, 也可以重写父类的方法;implements 是实现多个接口, 接口的方法一般为空的, 必须重写才能使用
extends是继承父类,只要那个类不是声明为final或者那个类定义为abstract的就能继承Java中不支持多重继承,但是可以用接口 来实现,这样就要用到implements,继承只能继承一个类,但implements可以实现多个接口,用逗号分开就行了 比如 :class A extends B implements C,D,E接口实现的注意点:
实现一个接口就是要实现该接口的所有的方法(抽象类除外)。
接口中的方法都是抽象的。
多个无关的类可以实现同一个接口,一个类可以实现多个无关的接口。
vue3的使用方式
vue3的使用方式
基本使用<template>
<div class="home">
<!-- 父子组件传值 -->
<son num="66" name="trist" :age="age" @baba="getSon"><a>我是插槽</a></son>
</div>
</template>
<script>
import son from './son.vue';
import { reactive, toRefs } from 'vue';
import { useRoute, useRouter } from 'vue-router';
export default {
name: 'home',
components: {
son
},
setup(props, ctx) {
// 获取当前路由信息
const route = useRoute();
// 全局路由的实例
const rout ...