langyazhixue

积极向上,独立自主

  • 主页
所有文章 关于我

langyazhixue

积极向上,独立自主

  • 主页

浏览器安全

2021-06-11

浏览器安全可以分为 三大块 —Web页面安全、浏览器网络安全 和 浏览器系统安全

  • 同源策略:为什么XMLHTTPRequest不能跨域请求资源?

    1. 页面中最基础、最核心的安全策略:同源策略

    2. 如果两个 URL协议、域名和端口都相同,我们就称这两个 URL 同源。

    3. 浏览器默认2个相同的源之间是可以相互访问资源和操作DOM的。两个不同的源之间若想要相互访问资源或者操作 DOM,那么会有一套基础的安全策略的制约,我们把这称为同源策略。
      具体表现在

      1. DOM

        1
        { let pdom = opener.document.body.style.display = "none"}
      2. Web数据
        无法去读Cookie、IndexDB 或者 LocalStorage 等内容

      3. 网络 XMLHTTPRequest 不能跨域请求资源

    4. 安全性和便利性的权衡
      同源策略会隔离不同源的DOM、页面数据和网络通信,为了便利性,浏览器让出一些安全性来满足灵活性
      2大问题:XSS 攻击 CSRF攻击

      1. 页面中可以嵌入第三方资源,比如将不同的资源部署到不同的CDN上时候,CDN上的资源就部署在另外的域名上
        容易引发XSS攻击,为了解决XSS攻击,浏览器引入了内容安全策略,称为CSP。
        CSP的核心思想就是让服务器决定浏览器能够加载哪些资源,让服务器决定浏览器是否能够执行内联JS代码

      2. 跨域资源共享和跨文档消息机制

        1. 跨域资源共享 CORS Corss Origin Resource Sharing
          跨域资源共享 CORS 详解
          CORS需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,IE浏览器不能低于IE10。整个CORS通信过程,都是浏览器自动完成,不需要用户参与。对于开发者来说,CORS通信与同源的AJAX通信没有差别,代码完全一样。浏览器一旦发现AJAX请求跨源,就会自动添加一些附加的头信息,有时还会多出一次附加的请求,但用户不会有感觉。
          因此,实现CORS通信的关键是服务器。只要服务器实现了CORS接口,就可以跨源通信
        2. 跨文档消息机制
          HTML5中的跨文档消息传递
  • 跨站脚本攻击(XSS):为什么Cookie 中有 HttpOnly属性?

    1. XSS 全称是Cross Site Scripting XSS 攻击是指黑客往HTML文件中或者DOM中注入恶意脚本,从而在用户浏览页面时候利用注入的恶意脚本对用户实施攻击的一种手段

    2. 恶意脚本可以做的事情 1. 窃取Cookie信息 2. 监听用户行为 3. 修改DOM 伪造假的登陆窗口 4. 生成浮动窗口广告

    3. 攻击类型

      1. 存储型XSS 攻击
        将恶意代码存储到存在漏洞的服务器,访问含有恶意脚本的页面,上传用户信息到恶意服务器

      2. 反射型 XSS 攻击
        我们会发现用户将一段含有恶意代码的请求提交给 Web 服务器,Web 服务器接收到请求时,又将恶意代码反射给了浏览器端,
        Web 服务器不会存储 反射型 XSS 攻击的恶意脚本 黑客经常会通过 QQ 群或者邮件等渠道诱导用户去点击这些恶意链接

      3. 基于DOM 的XSS 攻击
        基于 DOM 的 XSS 攻击是不牵涉到页面 Web 服务器的,它们的共同特点是在Web资源传输过程或者在用户使用页面的过程中修改

    4. 如何阻止XSS攻击

      1. 存储型 XSS 攻击和反射型 XSS 攻击 - 利用服务器阻止
        1. 服务器对输入脚本进行过滤或转码
        2. 充分利用CSP
        3. 限制加载其他域下的资源文件,这样即使黑客插入了一个JS文件,这个JS文件也是无法被加载的
        4. 禁止向第三方域提交数据,这样用户也不会外泄
        5. 禁止执行内联脚本和未授权的脚本
        6. 提供了上报机制,帮助我们尽快发现有哪 XSS 攻击,以便尽快修复问题
        7. 使用HttpOnly 属性,阻止脚本读取Cookie
      2. 基于 DOM 的 XSS 利用 HTTPS
  • CSRF 攻击: 陌生链接不要随便点

  1. CSRF 英文全称是 Cross-site request forgery, 称为“跨站请求伪造”,黑客利用用户的登陆状态,并通过第三方做一些事情

  2. 如何实现CSRF

    1. 自动发起get请求 , 黑客将转账的请求接口隐藏在 img 标签内
    2. 自动发起POST请求 , 当用户打开黑客的站点时,是自动提交 POST 请求
    3. 引诱用户点击链接 , 美女图片 而这个下载地址实际上是黑客用来转账的接口,一旦用户点击了这个链接,那么他的极客币就被转到黑客账户上了
  3. 如何防止 CSRF 攻击

    1. 在 HTTP 响应头中,通过 set-cookie 字段设置 Cookie 时,可以带上 SameSite 选项
      如果你从极客时间的页面中访问 InfoQ 的资源,而 InfoQ 的某些 Cookie 设置了 SameSite = Strict 的话,那么这些 Cookie 是不会被发送到 InfoQ 的服务器上的。只有你从 InfoQ 的站点去请求 InfoQ 的资源时,才会带上这些 Cookie

    2. 服务器验证请求的来源站点

      1. Referfer 是 Http 请求头中的一个字段,记录了该 HTTP 请求的来源地址
      2. Origin: Origin 属性只包含了域名信息,并没有包含具体的 URL 路径
    3. CSRF Token

      1. 在浏览器向服务器发起请求时候,服务器生成一个CSRF Token。CSRF Token 其实 就是服务器生成的字符串,该字符串植入到返回的页面中

      2. 在浏览器如果要发起转账请求的时候,需要带上页面中的 CSRF Token, 然后服务器会验证Token是否合法。如果是从第三方站点发出的请求,将无法获取到 这个值,所以即使发出来请求,服务器因为token不争气而拒绝请求

  • 安全沙箱:页面和系统之间的隔离墙

    1. 页面安全和操作系统安全

    2. 渲染进程放在安全沙箱中:HTML 解析,CSS 解析,执行JS,图片解码,渲染出位图

      1. 为什么一定要通过浏览器内核去请求资源,再将数据转发给渲染进程,而不直接从进程内部去请求网络资源?
      2. 为什么渲染进程只负责生成图片,生成图片还要经过IPC 通知 浏览器内核模块,然后让浏览器内核去负责图片
    3. 将渲染进程和操作系统隔离的这道墙就是我们要聊的安全沙箱,安全沙箱,
      浏览器中的安全沙箱是利用操作系统提供的安全技术,让渲染进程在执行过程中无法访问或者修改操作系统中的数据,在渲染进程需要访问系统资源的时候,需要通过浏览器内核来实现,然后将访问的结果通过 IPC 转发给渲染进程

    4. 渲染进程和浏览器内核各自有哪些职责

      1. 渲染进程:HTML解析,CSS 解析,图片解码,JS 执行,布局,绘制,XML解析
      2. 浏览器内核:Cookie存储,Cache 存储,网络请求,文件读取,下载管理 ,SSL/TSL ,浏览器窗口管理
  1. 安全沙箱如何影响各个模块功能
    1. 持久存储 Cookie 读取, 缓存文件的读写
    2. 网络访问
    3. 用户交互
    4. 站点隔离:由于最初都是按照标签页来划分渲染进程的,所以如果一个标签页里面有多个不同源的 iframe,那么这些 iframe 也会被分配到同一个渲染进程中,这样就很容易让黑客通过 iframe 来攻击当前渲染进程。而站点隔离会将不同源的 iframe 分配到不同的渲染进程中,这样即使黑客攻击恶意 iframe 的渲染进程,也不会影响到其他渲染进程的
  • HTTPS:让数据传输更安全(网络安全协议)
    1. 对称加密和非对称加密搭配使用
    2. 浏览器向服务器发送对称加密套件列表、非对称加密套件列表 和随机数 client-random
    3. 服务器保存随机数client-random,选择对称加密和非对称加密的套件,然后生成随机数service-random, 向浏览器发送选择的加密套件,service-random和公钥
    4. 浏览器保存公钥,并生成随机数pre-master,然后利用公钥对 pre-master 加密,并向服务器发送加密后的数据;
    5. 最后服务器拿出自己的私钥,解密出 pre-master 数据,并返回确认消息。
    6. 服务器和浏览器就有了共同的 client-random、service-random 和 pre-master,然后服务器和浏览器会使用这三组随机数生成对称密钥,因为服务器和浏览器使用同一套方法来生成密钥,所以最终生成的密钥也是相同的
  1. 添加数字证书

    1. 对浏览器来说,数字证书有2个作用:一个是通过数字证书向浏览器证明服务器的身份,另一个是数字证书里面包含了服务器公钥

    2. 增加数字证书后,有2点不同:

      1. 服务器没有直接返回公钥给浏览器,而是返回了数字证书,而公钥是包含在数字证书中
      2. 浏览器端多了一个验证数字证书的操作,只有验证了证书后,才继续走后面的流程
    3. CA 向极客时间签发认证的数字证书,包含了极客时间的公钥、组织信息、CA的信息、有效时间、证书序列号等,这些信息都是明文的,同时包含CA 的签名

    4. 数字签名:首先 CA 使用 Hash 函数来计算极客时间提交的明文信息,并得出信息摘要;然后 CA 再使用它的私钥对信息摘要进行加密,加密后的密文就是 CA 颁给极客时间的数字签名。这就相当于房管局在房产证上盖的章,这个章是可以去验证的,同样我们也可以通过数字签名来验证是否是该 CA 颁发的。

  2. 浏览器如何验证数字证书?

    1. 采用 CA 签名时相同的 Hash 函数来计算并得到信息摘要 A;然后再利用对应 CA 的公钥解密签名数据,得到信息摘要 B;对比信息摘要 A 和信息摘要 B
  • 浏览器
问题解答
http协议飞翔篇
© 2022 langyazhixue
Powered by Hexo
  • 所有文章
  • 关于我

tag:

  • css
  • htmlDOM
  • node
  • npm
  • react-native
  • 性能优化
  • git
  • 代码规范
  • plugin
  • mock
  • 浏览器
  • 计算机基础
  • http
  • 网络
  • webpack
  • vue
  • vue-cli
  • brower
  • 数据结构
  • es5
  • es6
  • test
  • ts
  • typescript
  • react-router
  • react
  • dva
  • redux
  • redux-saga
  • vue API
  • vue 选项
  • vue基础
  • 设计模式
  • vue-router
  • requestIdleCallback

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • 2022-06-24

  • React-setState()的两中传参方式介绍及理解

    2021-12-08

    #react

  • requestIdleCallback

    2021-11-30

    #requestIdleCallback

  • enzyme 测试

    2021-11-13

    #test

  • React 合成事件

    2021-11-08

    #react

  • 小哲机器人项目情况

    2021-08-11

    #webpack

  • 测试类型

    2021-07-15

    #test

  • http协议进阶篇

    2021-06-11

    #网络

  • 问题解答

    2021-06-11

    #浏览器

  • http协议探索篇

    2021-06-11

    #网络

  • http协议安全篇

    2021-06-11

    #网络

  • http协议破冰篇

    2021-06-11

    #网络

  • 浏览器中的JS 执行机制

    2021-06-11

    #浏览器

  • 课外加餐

    2021-06-11

    #浏览器

  • V8引擎工作原理

    2021-06-11

    #浏览器

  • http协议基础篇

    2021-06-11

    #网络

  • V8引擎工作原理

    2021-06-11

    #浏览器

  • 宏观视角下的浏览器

    2021-06-11

    #浏览器

  • http协议总结篇

    2021-06-11

    #网络

  • 问题解答

    2021-06-11

    #浏览器

  • 浏览器安全

    2021-06-11

    #浏览器

  • http协议飞翔篇

    2021-06-11

    #网络

  • 浏览器中的页面

    2021-06-11

    #浏览器

  • vue - 性能优化

    2021-01-02

    #性能优化

  • 性能优化

    2021-01-02

    #性能优化

  • 骨架屏

    2021-01-02

    #性能优化

  • 收集性能信息

    2021-01-02

    #性能优化

  • webapck - 性能优化

    2021-01-02

    #性能优化

  • 关于屏幕尺寸、分辨率(比)、屏幕像素密度的小结

    2021-01-02

    #性能优化

  • git 命令大全

    2020-11-05

    #git

  • vue-cli css 相关配置

    2020-07-31

    #vue#vue-cli

  • vue-cli 环境变量和模式

    2020-07-31

    #vue#vue-cli

  • vue-cli webpack相关配置

    2020-07-31

    #vue#vue-cli

  • vue-cli 脚手架介绍

    2020-07-31

    #vue#vue-cli

  • vue-cli 构建目标

    2020-07-31

    #vue#vue-cli

  • 声明文件的发布

    2020-07-29

    #typescript

  • 如何写TS中的声明文件

    2020-07-29

    #typescript

  • ts 项目配置 tsconfig.json

    2020-07-29

    #typescript

  • 在TypeScript中,.d.ts声明文件中的'export=' 是什么意思

    2020-07-29

    #typescript

  • 进程与线程的区别

    2020-03-05

    #计算机基础

  • react-native 核心组件介绍

    2020-01-02

    #react-native

  • react-native 核心API 介绍

    2020-01-02

    #react-native

  • react-native 离线缓存设计

    2019-12-30

    #react-native

  • react-native 数据缓存

    2019-12-30

    #react-native

  • react-native

    2019-12-30

    #react-native

  • webpack 谈谈 require和require.context()方法

    2019-12-21

    #es6

  • vue权限控制和动态路由

    2019-12-19

    #vue-router

  • 请求相关 path-to-regexp

    2019-12-19

    #plugin

  • dva有哪些输出文件

    2019-12-18

    #react#dva

  • 为什么要用dva

    2019-12-18

    #react#dva

  • dva插件之 dva-loading插件

    2019-12-18

    #react#dva

  • dva有哪些API

    2019-12-18

    #react#dva

  • 谈谈如何在本地进行数据mock

    2019-12-10

    #mock

  • redux-saga 之 Middleware API

    2019-12-05

    #redux#redux-saga

  • redux-saga 如何与 redux 结合

    2019-12-05

    #redux#redux-saga

  • redux-saga 辅助函数

    2019-12-05

    #redux#redux-saga

  • redux-saga 对 sagas 进行排序

    2019-12-05

    #redux#redux-saga

  • redux-saga 之 Effect创建器

    2019-12-05

    #redux#redux-saga

  • redux-saga 组合器

    2019-12-05

    #redux#redux-saga

  • 实现一个flat函数

    2019-12-02

    #es6

  • 谈谈 react-redux

    2019-11-29

    #redux

  • 谈谈 react-router 之 history

    2019-11-29

    #react-router

  • 谈谈 react-router 之 Link

    2019-11-29

    #react-router

  • 谈谈 react-router 之 懒加载

    2019-11-29

    #react-router

  • 谈谈 react-router 之 Hooks

    2019-11-29

    #react-router

  • 谈谈redux 中的 middleware

    2019-11-29

    #redux

  • 谈谈 react-router 之 match

    2019-11-29

    #react-router

  • 谈谈 react-router 之 Router

    2019-11-29

    #react-router

  • redux 综述

    2019-11-29

    #redux

  • redux API 解析

    2019-11-29

    #redux

  • 什么是reducer

    2019-11-20

    #redux

  • 自己实现一个深拷贝

    2019-11-14

    #es5

  • React受控组件

    2019-11-08

    #react

  • React Hook 动机

    2019-11-08

    #react

  • React 生命周期

    2019-11-08

    #react

  • React API

    2019-11-08

    #react

  • React 生命周期2

    2019-11-08

    #react

  • React 性能优化

    2019-11-08

    #react

  • React 高阶组件

    2019-11-08

    #react

  • React 深入JSX

    2019-11-08

    #react

  • React 错误边界

    2019-11-08

    #react

  • React 协调

    2019-11-08

    #react

  • React 代码分割

    2019-11-08

    #react

  • React 不使用jsx

    2019-11-08

    #react

  • React Refs and the DOM

    2019-11-08

    #react

  • React 问题解答

    2019-11-08

    #react

  • React Render Props

    2019-11-08

    #react

  • React 复习指南

    2019-11-08

    #react

  • React事件处理函数必须使用bind(this)的原因

    2019-11-08

    #react

  • React Refs 转发

    2019-11-08

    #react

  • React中元素与组件的区别

    2019-11-08

    #react

  • React Portals

    2019-11-08

    #react

  • 自己实现一个自己的promise

    2019-11-02

    #es6

  • 散列表-线性探查

    2019-11-01

    #数据结构

  • 散列表-分离链接

    2019-11-01

    #数据结构

  • 学习数据结构

    2019-10-22

    #数据结构

  • 如何实现一个lazyMan

    2019-10-15

    #es5

  • 谈谈原生的ajax

    2019-10-15

    #brower

  • 谈谈浏览器的宏任务和微任务(事件机制)

    2019-10-15

    #brower

  • es5中 constructor

    2019-10-14

    #es5

  • toString 的 隐式转化能力

    2019-10-14

    #es5

  • IntersectionObserver 实现懒加载

    2019-10-14

    #es5

  • toString 的 隐式转化能力

    2019-10-14

    #es5

  • 谈谈Vue整理的工作流程

    2019-10-08

    #vue#vue基础

  • window.onload

    2019-10-08

    #htmlDOM

  • 打印出html中所有的标签

    2019-10-08

    #htmlDOM

  • HTML DOM childNodes 属性

    2019-10-08

    #htmlDOM

  • typescript基本类型

    2019-09-29

    #typescript

  • 说出v-model跟async的区别

    2019-09-29

    #vue#vue 选项

  • 谈谈 Vue 中的响应式原理哦

    2019-09-18

    #vue#vue基础

  • 优化构建命令行的显示日志以及构建异常和中断处理

    2019-09-11

    #webpack

  • wepack 常见问题列表

    2019-09-11

    #webpack

  • 构建配置抽离成npm包的意义

    2019-09-11

    #webpack

  • npm piblish 基本流程

    2019-09-10

    #node#npm

  • JavaScript 中 exec() 方法详解

    2019-09-05

    #es5

  • vue key 的作用

    2019-08-30

    #vue

  • vue 组件化通信

    2019-08-30

    #vue

  • 为什么Vue实例化后,通过this.能获取到data内的数据

    2019-08-30

    #vue

  • es5 有哪几种继承方式

    2019-08-26

    #es5

  • 设计原则

    2019-08-20

    #设计模式

  • 代码分割 和 动态 import

    2019-08-13

    #webpack

  • 谈谈js的作用域连 和 执行环境

    2019-08-12

    #es5

  • 我们来谈谈一言难尽的js变量提升

    2019-08-12

    #es5

  • webpack中  Scope Hositing 使用和原理

    2019-08-05

    #webpack

  • webpack中 tree shaking(摇树优化)

    2019-08-05

    #webpack

  • ES6中的import()函数

    2019-08-02

    #es6

  • 谈谈 axios 和 ajax 的区别和各自的优缺点

    2019-08-02

    #es5

  • error 错误

    2019-08-02

    #es5

  • JavaScript中var、let、const区别?

    2019-08-02

    #es6

  • npm 常用命令大全

    2019-07-30

    #node#npm

  • nrm的作用与安装使用

    2019-07-30

    #node#npm

  • ts 常见问题总结

    2019-07-30

    #ts

  • webpack中 优化提取公共资源

    2019-07-30

    #webpack

  • webpack打包之使用source-map?

    2019-07-29

    #webpack

  • webpack打包之资源内联?

    2019-07-28

    #webpack

  • webpack中文件的监听

    2019-07-26

    #webpack

  • 关于Location对象

    2019-07-26

    #brower

  • 谈谈 URI 和 URL 的关系

    2019-07-26

    #brower

  • 谈谈 history API

    2019-07-26

    #brower

  • 一篇文章读懂RGB、HSL、Hex 网页色彩值

    2019-07-22

    #css

  • 谈谈 css中的 transition 过渡

    2019-07-21

    #css

  • 谈谈 css中的 transform 转换

    2019-07-21

    #css

  • 谈谈 css中的 居中

    2019-07-21

    #css

  • 冒烟测试

    2019-07-15

    #test

  • webpack 配置指南?

    2019-07-15

    #webpack

  • webpack构建之mode?

    2019-07-15

    #webpack

  • webpack解析CSS、Less和Sass ?

    2019-07-15

    #webpack

  • 为什么需要打包工具以及为什么选择wbepack?

    2019-07-10

    #webpack

  • Es6 Promise resolve 或者 reject 之后 还 需要 return 吗

    2019-07-02

    #es6

  • Es6 Promise 用法详解

    2019-07-02

    #es6

  • Es6 类的修饰 - 装饰器

    2019-07-02

    #es6

  • 关于table 中的标签 意义以及 table中各个属性的设置

    2019-06-28

    #css

  • 谈谈 Object.create()

    2019-06-26

    #es5

  • 数组快速排序

    2019-06-26

    #es5

  • 递归算法,js实现

    2019-06-26

    #es5

  • 关于算法中的时间复杂度的理解

    2019-06-26

    #数据结构

  • 学习stack

    2019-06-26

    #数据结构

  • 打印出 Html 中的所有标签

    2019-06-26

    #es5

  • 自己实现一个集合

    2019-06-26

    #数据结构

  • 自己实现一个字典

    2019-06-26

    #数据结构

  • 谈谈 柯里化

    2019-06-26

    #es5

  • 深拷贝和浅拷贝

    2019-06-26

    #es5

  • 函数节流与防抖

    2019-06-26

    #es5

  • async await 捕获promise reject error

    2019-06-26

    #es6

  • scss 入门

    2019-06-26

    #css

  • element UI、iview 等组件库修改样式不污染全局环境

    2019-06-26

    #css

  • 详解 ES6 class

    2019-06-26

    #es6

  • 谈谈Object.defineProperty

    2019-06-26

    #es6

  • 谈谈 Content-Type

    2019-06-26

    #http

  • 谈谈 正向代理和反向代理

    2019-06-26

    #http

  • js 垃圾回收

    2019-06-26

    #es5

  • 谈谈 Content-Type

    2019-06-26

    #http

  • 谈谈 闭包

    2019-06-26

    #es5

  • webpack3中 hash、chunkhash 和 contenthash 三者的区别

    2019-06-26

    #webpack

  • 快速排序

    2019-06-26

    #数据结构

  • 详解 ES6 class

    2019-06-26

    #es6

  • 谈谈webpack 中的plugin

    2019-06-26

    #webpack

  • css 命名规范 -- BEM 思想

    2019-06-26

    #css

  • HTML、CSS 和 JS 代码压缩

    2019-06-26

    #webpack

  • scss与sass的区别

    2019-06-26

    #css

  • JS模块规范:AMD、CMD、commonJS、ES6

    2019-06-26

    #es6

  • less 入门

    2019-06-26

    #css

  • 谈谈es6中的module

    2019-06-26

    #es6

  • webpack如何打包图片跟字体

    2019-06-26

    #webpack

  • 学习队列

    2019-06-26

    #数据结构

  • es5 构造函数

    2019-06-26

    #es5

  • 谈谈 js 的 call 和 apply

    2019-06-26

    #es5

  • webpack的热更新以及原理分析

    2019-06-26

    #webpack

  • 谈谈JS中的作用域问题

    2019-06-26

    #es5

  • 浅浅的谈一谈关于Vue 的生命周期

    2019-06-23

    #vue#vue基础

  • Vue的keep-alive用法

    2019-06-23

    #vue#vue基础

  • $attrs 和 $listeners的使用

    2019-06-23

    #vue#vue基础

  • 谈谈 Vue 中 的 computed

    2019-06-22

    #vue#vue基础

  • vue scoped scss 与深度作用选择器 /deep/

    2019-06-21

    #vue#vue基础

  • 前端常见问题和解决方案

    2019-06-20

    #代码规范

  • 谈谈 Vue 中的 自定义指令

    2019-06-20

    #vue#vue基础

  • 谈谈 Vue 中 的 组件

    2019-06-20

    #vue#vue基础

  • vue中is的作用

    2019-06-20

    #vue#vue基础

  • eslint 配置

    2019-06-20

    #代码规范

  • this.$refs 和 this.$el的作用和区别

    2019-06-20

    #vue#vue基础

  • 谈谈Vue中的插槽

    2019-06-19

    #vue#vue基础

  • 谈谈Vue中的递归组件

    2019-06-19

    #vue#vue基础

  • Vue中的provide/inject

    2019-06-19

    #vue#vue基础

  • vue 为什么组件的data要写成返回对象的函数

    2019-06-19

    #vue#vue基础

  • 怎么给 vue 写一个插件

    2019-06-19

    #vue#vue基础

  • 对于Vue这种MVVM设计模式的理解

    2019-06-19

    #vue#vue基础

  • 谈谈 vue 中 的 mixins

    2019-06-19

    #vue#vue基础

  • 谈谈 template 解决的痛点

    2019-06-19

    #vue#vue 选项

  • 谈谈 vue.component

    2019-06-19

    #vue#vue API

  • 谈谈 vue.directive

    2019-06-19

    #vue#vue API

  • 谈谈 vue.extend

    2019-06-19

    #vue#vue API

  • 谈谈 vue.filter

    2019-06-19

    #vue#vue API

  • Vue给对象新增属性(使用Vue.$set())

    2019-06-19

    #vue#vue API

  • 谈谈 Vue.nextTick

    2019-06-19

    #vue#vue API

  • 谈谈Vue中单元素/组件的过渡

    2019-06-19

    #vue#vue基础

  • $slots 跟 $scoped-slots 的对比

    2019-06-19

    #vue#vue 选项

  • 谈谈Vue中的函数式组件

    2019-06-19

    #vue#vue 选项

  • 谈谈el

    2019-06-19

    #vue#vue 选项

  • 谈谈Vue中的watch

    2019-06-19

    #vue#vue基础

  • 谈谈Vue中的render函数

    2019-06-19

    #vue#vue 选项

  • 在 vue-router 中利用钩子函数调用vuex中的数据

    2019-06-19

    #vue-router

  • 谈谈Vue的实例方法/生命周期

    2019-06-19

    #vue#vue 选项

  • 谈谈 vue 中的配置项 inheritAttrs

    2019-06-19

    #vue#vue 选项

  • vue中'. native'修饰符的使用

    2019-06-19

    #vue#vue 选项

  • 谈谈Vue的指令以及事件修饰符

    2019-06-19

    #vue#vue 选项

  • vue comments

    2019-06-19

    #vue#vue 选项

  • vue 实例属性

    2019-06-19

    #vue#vue 选项

  • 谈谈Vue的指令

    2019-06-19

    #vue#vue 选项

  • 谈谈model以及v-model指令

    2019-06-19

    #vue#vue 选项

  • 谈谈 vue-router 中的 router

    2019-06-19

    #vue-router

  • 谈谈Vue的实例方法/属性

    2019-06-19

    #vue#vue 选项

  • 谈谈 $parent, $children

    2019-06-19

    #vue#vue 选项

  • 谈谈 extends 和 mixins

    2019-06-19

    #vue#vue 选项

  • vue-router 中的 router-view

    2019-06-19

    #vue-router

  • Vue Router path 中通配符

    2019-06-19

    #vue-router

  • vue-router Router 构件项

    2019-06-19

    #vue-router

  • vue-router 中的 <router-link>

    2019-06-19

    #vue-router

  • 谈谈vue-router中的redirect

    2019-06-19

    #vue-router

  • vue-router的hash模式和history的区别

    2019-06-19

    #vue-router

  • vue-router的$route

    2019-06-19

    #vue-router

很惭愧<br><br>只做了一点微小的工作<br>谢谢大家