1.postcss 使用过吗
2.在js里写css这种尝试过吗
juejin.cn/post/684490… juejin.cn/post/715314…
3.全局的css应该怎么配置
具体参见 managePlatform 项目
1.在webpack里配置less
2.在src目录下创建styles文件夹,其内配置黑白两色主题变量集index.css,如下
/* 暗色主题 */
:root[theme='dark']{
--common-content-bg:url(../../../assets/images/dark/content.png) no-repeat;
--common-head-bg:url(../../../assets/images/dark/head.png) no-repeat;
--theme-color:#1A3B4A;
--word-color: #ffffff;
--icon-color: #ffffff;
--num-color: #00FFFF;
--tabs_plan-back:#00FFFF;
--img-info-bg: #1A3B4A;
--img-info-color: white;
}
:root是一个伪类,表示文档根元素,所有主流浏览器均支持
:root 选择器,除了 IE8 及更早的版本。在:root中声明相当于全局属性
只要当前页面引用了:root segment所在文件,都可以使用var()来引用
var()函数可以代替元素中任何属性中的值的任何部分
var()函数不能作为属性名、选择器或者其他除了属性值之外的值
(这样做通常会产生无效的语法或者一个没有关联到变量的值)
3.在app.js里将2中的css文件引入
import './styles/theme/dark/index.css';
import './styles/theme/light/index.css';
4.在less文件里引入变量
div {
background-color: var(--blue); /* 设置背景颜色为蓝色 */
}
4.如何进行性能优化
5.你在项目里遇到的难点及解决方案
6.浏览器缓存什么时候是from memory什么时候是from disk
- 较小的文件会缓存在memory中
- 较大的会优先放到disk中
- memory中的读取速度会更快,但是它的空间相对比较小
读取地方与加载方式有关
- 在地址栏中输入地址,主要是disk cache,如果没有再去服务器请求资源;
- 刷新网页(F5)):会根据当前运行环境内存来决定是从 Memory Cache 还是 从Disk Cache中,优先使用memory cache,没有匹配到的再去disk cache中查找;
- 强制刷新(Ctrl + F5):从服务器请求,不使用缓存,加载时间会比较慢;
7.url输入后全过程以及发请求的顺序,例如是先发html、css还是js,以及事先发字体请求还是图片请求
此问题的本质是浏览器的加载顺序是什么?
- 将加载的资源进行分类
- 进行安全性检查(跨域就是在这个阶段检查的)
- 对加载的资源进行分级
- 根据优先级加载资源
浏览器加载资源的顺序:
- 最高级:html,css,font
- 然后:js,xhr
- 然后是多媒体:图片-语音-视频
- 最后:prefetch预加载的资源
根据实际的规则,浏览器会对加载的资源顺序有所调整:
- 同步的xhr请求优先级最高
- 如果图片的视图在可见范围之内,优先加载图片
8.object和string类型存储在什么地方
- 如果是基础类型,那栈中存的是数据本身。
- 如果是对象类型,那栈中存的是堆中对象的引用,对象本身存在堆中
- 闭包存在heap中 juejin.cn/post/696175…
9.git rebase和git merge的区别
learngitbranching.js.org/?locale=zh_…
10.Proxy讲一下
11.eslint有配置过吗
ESLint检查原理
要实现静态分析则需要自建一个预编译阶段对代码进行解析。
首先我们看看大部分编译器工作时的三个阶段:
- 解析:将未经处理的代码解析成更为抽象的表达式,通常为抽象语法树,即
AST。 - 转换:通过修改解析后的代码表达式,将其转换为符合预期的新格式。
- 代码生成:将转换后的表达式生成为新的目标代码。
对于 ESLint 来说,规则校验发生在将 JavaScript 代码解析为 AST 之后,遍历 AST 的过程中。ESLint 采用 Espree 来生成 AST。具体的生成方法在这里。 我们可以使用AST explorer来查看代码被解析后生成的 AST。