摘要:
火狐浏览器dragover不起效的原因: 火狐下拖拽必须含有数据也就是说在dragStart的时候,需要强行塞入一个数据: event.dataTransfer.setData("info","test") 此时,你的dragOver函数应该就进去了。拖拽的全部代码: 方式一:(在over的时候操作 阅读全文
摘要:
基本数据类型:Number、String、Boolean、Null、 Undefined、Symbol(ES6),这些类型可以直接操作保存在变量中的实际值。 引用数据类型:Object(在JS中除了基本数据类型以外的都是对象,数据是对象,函数是对象,正则表达式是对象) 首先要知道我们的复杂类型其实并 阅读全文
摘要:
1.undefined undefined的产生为初始化的时候,如果没有进行赋值,她是一个预定义的全局变量,例如: 在你没有进行对某个变量进行赋值的时候,他会被赋为undefined。 2.null null是人为进行赋值的。比如某个函数或者数组等等复杂类型,你如果想要进行一个舍弃,可以把它赋值为n 阅读全文
摘要:
1. CSS 盒子模型 大体包含:margin、padding、border、content。 官网的解释: 在一个文档中,每个元素都被表示为一个矩形的盒子。确定这些盒子的尺寸, 属性 像它的颜色,背景,边框方面 和位置是渲染引擎的目标。 在CSS中,使用标准盒模型描述这些矩形盒子中的每一个。这个模 阅读全文
摘要:
const isFirefox = typeof navigator !== 'undefined' && navigator.userAgent.toLowerCase().indexOf('firefox') > -1; 判断是火狐浏览器的时候,滚动事件mousewheel要使用DOMMouse 阅读全文
摘要:
最近开始看了饿了么的组件源码,发现饿了么对provide的使用很常见,随即进行了provide的大致概括。 此处以饿了么的dropdown为例: 父组件使用provide,子组件和其孙子组件皆可用inject获取到父组件中provide定义的字段内容。 其中provide为对象形式,inject为字 阅读全文
摘要:
React Router中的组件主要有三类: routers, 路由,例如<BrowserRouter> 、 <HashRouter> route matchers,路由匹配 如 <Route> 、<Switch> navigation,导航,如 <Link>、 <NavLink>、<Redirec 阅读全文
摘要:
组合其实类似于vue的slot插槽 1.包含关系 默认插槽为props.children。eg: 还可以使用类似Vue的具名插槽。eg: 虽然在理解上我们可以理解为插槽类的东西在用,但是react上并没有插槽的概念,所有东西都是可以用参数进行传递。 关于继承 Props 和组合为你提供了清晰而安全地 阅读全文
摘要:
多个组件使用共同的状态进行变化的时候,考虑这个状态放在父组件上。 可变数据应保证只有一个数据源,如果两个组件需要相同的state,应该把它提升到相同的父组件中,所有改变也是通过父组件去改,子组件书写 this.props.父组件方法(参数),父组件写:<子组件 子组件调用方法名={func}>。 该 阅读全文
摘要:
在React中,form表单元素和其他的DOM不一样,因为表单元素通常会保留一个内部的state状态。 1.受控组件 对于受控组件的好处是:每一个表单都有一个单独处理它的state,这样比较容易方便进行用户输入的校验和限制 2.textarea标签 3.select标签 与vue类似,所有选中以及c 阅读全文