-
单级反激式PFC连续模式下电流有效值计算
2021-01-31 22:03:46在相同的假设条件下,利用积分得出了电流有效值数值计算公式。解析解和数值解分析对比结果表明,两种计算结果具有很好的一致性。通过实验验证,用这种方法设计的变压器在同样温升的前提下,变压器体积大大减小。 -
电子元件二极管封装SMA,SMB,SMC的区别
2020-08-08 00:25:23但尺寸越大,功率也越高(一般我们是指长时间稳定运行时的功率,不是指测试时的峰值,当然,在同样条件下,SMC的峰值功率都应该是最高的),在功率相对较高的场合,则需要使用大一些的封装尺寸。例如,A...某个电路使用二极管(典型的如肖特基二极管SS14 SS24 SS34),发现居然有三个规格,SMA, SMB, SMC,
找了一下其区别,记录如下,
从下面图片的来看,可以看出主要体积上不同:SMA < SMB < SMC.
当然,从成本和体积来说,优先选用最小尺寸的SMA/DO-214AC封装。但尺寸越大,功率也越高(一般我们是指长时间稳定运行时的功率,不是指测试时的峰值,当然,在同样条件下,SMC的峰值功率都应该是最高的),在功率相对较高的场合,则需要使用大一些的封装尺寸。例如,AVX给出的TVS管最高功率(测试时的峰值功率)分别为400W, 600W, and 1500W。
参考:
【1】https://www.kingtronics.com/news/Kt-Kingtronics-Difference-Between-SMA-SMB-and-SMC-Packaging-20170418.html
【2】https://www.mouser.com/pdfdocs/AVX_SMASMBSMC_TVS_Diodes_Fast_Facts.pdf -
显示/光电技术中的安华高科技推出长寿命、高亮度微型白色LED系列产品
2020-12-02 15:37:23安华高科技(Avago Technologies)宣布推出一系列微型白色LED系列产品,特别适合恶劣环境条件下的汽车和电子标志应用,也非常适用于各种家庭和办公等应用领域。Avago的ASMT-SWBM长寿命、高亮度表面封装(SMT)白色LED被... -
论文研究 - 不同模型在天然铁矿石直接还原动力学预测中的应用
2020-06-01 11:59:06同样,使用三个模型:1)颗粒模型(GM),2)体积模型(VM)和3)随机孔模型(RPM)来估计天然铁矿石的还原动力学。 发现RPM模型结果与所获得的实验结果最吻合。 此外,它对天然氧化铁的转化率以及还原动力学有更好... -
显示/光电技术中的Avago 推出新型微型LED系列产品
2020-12-09 03:43:49Avago Technologies(安华高科技)今日宣布推出一系列新型微型LED系列产品,特别适合恶劣环境条件下的汽车和电子标志应用,也非常适用于各种家庭和办公等应用领域。Avago Technologies(安华高科技)的ASMT-SWBM长... -
显示/光电技术中的Avago推出高亮度表面封装白色LED ASMT-SWBM
2020-11-29 10:57:18Avago宣布推出一系列新型微型LED系列产品:ASMT-SWBM,特别适合恶劣环境条件下的汽车和电子标志应用,也非常适用于各种家庭和办公等应用领域。Avago 的ASMT-SWBM长寿命、高亮度表面封装(SMT)白色发光二极管(LED)被... -
论文研究 - 从工业人工林裸根苗和微地点的质量分布解释第一年幼苗的存活
2020-05-27 00:16:10来自路易斯安那州农业和林业部(LDAF)的第一年幼苗存活数据的描述性统计表明,在正常天气条件下,存活成功率达到了79%-85%的稳定水平。 我们通过对经营性松树人工林中涉及的幼苗和微场所质量的分析,通过以下... -
适用于汽车、电子标志和信号灯的长寿命、高亮度白色LED ASMT-SWBM
2021-01-19 14:51:12微型LED系列产品ASMT-SWBM特别适合恶劣环境条件下的汽车和电子标志应用,也非常适用于各种家庭和办公等应用领域。ASMT-SWBM长寿命、高亮度表面封装(SMT)白色LED被封装在一个超薄的顶部安装的单芯片单元中。它的... -
汽车电子中的适用于汽车、电子标志和信号灯的长寿命、高亮度白色LED ASMT-SWBM
2020-12-10 14:29:17微型LED系列产品ASMT-SWBM特别适合恶劣环境条件下的汽车和电子标志应用,也非常适用于各种家庭和办公等应用领域。ASMT-SWBM长寿命、高亮度表面封装(SMT)白色LED被封装在一个超薄的顶部安装的单芯片单元中。它的... -
固件是通用的吗_冷镦和冷挤压是一回事吗,两者有什么区别?
2020-11-20 15:50:2401什么是冷挤压冷挤压就是把金属毛坯放在冷挤压模腔中,在室温下,通过压力机上固定的凸模向毛坯施加压力,使金属毛坯产生塑性变形而制得零件的加工方法,显然,冷挤压加工是靠模具来控制金属流动,靠金属体积的大量...冷镦与冷挤压基本上是同样条件的变形加工,但在操作方式上是不一样的。冷墩属于较小型工件的锻造变形,常用于紧固件工业。而冷挤压则属于较大型工件的挤压变形,用途较广泛。
01什么是冷挤压
冷挤压就是把金属毛坯放在冷挤压模腔中,在室温下,通过压力机上固定的凸模向毛坯施加压力,使金属毛坯产生塑性变形而制得零件的加工方法,显然,冷挤压加工是靠模具来控制金属流动,靠金属体积的大量转移来成形零件的。在挤压设备方面,我国已具备设计和制造各级吨位挤压压力机的能力。除采用通用机械压力机、液压机、冷挤压力机外,还成功地采用摩擦压力机与高速高能设备进行冷挤压生产。如果毛坯不经加热就进行挤压,便称为冷挤压。冷挤压是无切屑、少切屑零件加工工艺之一,所以是金屑塑性加工中一种先进的工艺方法。如果将毛坯加热到再结晶温度以下的温度进行挤压,便称为温挤压。温挤压仍具有少无切屑的优点。
冷挤压技术是一种高精、高效、优质低耗的先进生产工艺技术,较多应用于中小型锻件规模化生产中。与热锻、温锻工艺相比,可以节材30%~50%,节能40%~80%而且能够提高锻件质量,改善作业环境。
目前,冷挤压技术已在紧固件、机械、仪表、电器、轻工、宇航、船舶、军工等工业部门中得到较为广泛的应用,已成为金属塑性体积成形技术中不可缺少的重要加工手段之一。随着科技的进步和汽车、摩托车、家用电器等行业对产品技术要求的不断提高,冷挤压生产工艺技术己逐渐成为中小锻件精化生产的发展方向。
冷挤压还分正挤压、反挤压、复合挤压、径向挤压等。
02什么是冷镦
冷镦工艺是少无切削金属压力加工新工艺之一。它是一种利用金属在外力作用下所产生的塑性变形,并借助于模具,使金属体积作重新分布及转移,从而形成所需要的零件或毛坯的加工方法。冷镦工艺最适于用来生产螺栓、螺钉、螺母、铆钉、销钉等标准紧固件。冷镦工艺常用的设备为专用的冷镦机。如生产量不太大,也可以用曲柄压力机或摩擦压力机代替。冷镦工艺由于具有高的生产率,良好的产品质量,并大大减少材料消耗,降低生产成本,改善劳动条件,因此愈来愈广泛地应用在机械制造特别是标准紧固件的生产中,其中应用多工位冷镦机生产的最有代表性的产品,是螺栓、螺钉和螺母。
03冷镦和冷挤压是一回事吗?
冷墩与冷挤压基本上是同样条件的变形加工,但在操作方式上是不一样的。冷墩属于较小型工件的锻造变形,常用于紧固件工业。而冷挤压则属于较大型工件的挤压变形,用途较广泛;冷镦相当于是冷挤压的一个分枝,简单的来说做螺栓的工艺中,六角头成形属冷镦,杆部缩径属冷挤(正挤)。非切边六角法兰面螺栓(多工位成形)即有冷镦又有冷挤,六角螺母成形前边整形只有冷镦,后边工序挤孔属冷挤(正反挤)。 -
固件是通用的吗_冷镦与冷挤压是一回事吗?两者有什么区别?
2020-12-14 19:31:45冷挤压就是把金属毛坯放在冷挤压模腔中,在室温下,通过压力机上固定的凸模向毛坯施加压力,使金属毛坯产生塑性变形而制得零件的加工方法,显然,冷挤压加工是靠模具来控制金属流动,靠金属体积的大量转...点击蓝字 关注我们
推荐厂家
冷镦与冷挤压基本上是同样条件的变形加工,但在操作方式上是不一样的。冷镦属于较小型工件的锻造变形,常用于紧固件工业。而冷挤压则属于较大型工件的挤压变形,用途较广泛。
什么是冷挤压?
冷挤压就是把金属毛坯放在冷挤压模腔中,在室温下,通过压力机上固定的凸模向毛坯施加压力,使金属毛坯产生塑性变形而制得零件的加工方法,显然,冷挤压加工是靠模具来控制金属流动,靠金属体积的大量转移来成形零件的。在挤压设备方面,我国已具备设计和制造各级吨位挤压压力机的能力。除采用通用机械压力机、液压机、冷挤压力机外,还成功地采用摩擦压力机与高速高能设备进行冷挤压生产。
如果毛坯不经加热就进行挤压,便称为冷挤压。冷挤压是无切屑、少切屑零件加工工艺之一,所以是金屑塑性加工中一种先进的工艺方法。如果将毛坯加热到再结晶温度以下的温度进行挤压,便称为温挤压。温挤压仍具有少无切屑的优点。
冷挤压技术是一种高精、高效、优质低耗的先进生产工艺技术,较多应用于中小型锻件规模化生产中。与热锻、温锻工艺相比,可以节材30%~50%,节能40%~80%而且能够提高锻件质量,改善作业环境。
目前,冷挤压技术已在紧固件、机械、仪表、电器、轻工、宇航、船舶、军工等工业部门中得到较为广泛的应用,已成为金属塑性体积成形技术中不可缺少的重要加工手段之一。随着科技的进步和汽车、摩托车、家用电器等行业对产品技术要求的不断提高,冷挤压生产工艺技术己逐渐成为中小锻件精化生产的发展方向。
冷挤压还分正挤压、反挤压、复合挤压、径向挤压等。
什么是冷镦?
冷镦工艺是少无切削金属压力加工新工艺之一。它是一种利用金属在外力作用下所产生的塑性变形,并借助于模具,使金属体积作重新分布及转移,从而形成所需要的零件或毛坯的加工方法。冷镦工艺最适于用来生产螺栓、螺钉、螺母、铆钉、销钉等标准紧固件。冷镦工艺常用的设备为专用的冷镦机。如生产量不太大,也可以用曲柄压力机或摩擦压力机代替。
冷镦工艺由于具有高的生产率,良好的产品质量,并大大减少材料消耗,降低生产成本,改善劳动条件,因此愈来愈广泛地应用在机械制造特别是标准紧固件的生产中,其中应用多工位冷镦机生产的最有代表性的产品,是螺栓、螺钉和螺母。
冷镦和冷挤压是一回事吗?
冷镦与冷挤压基本上是同样条件的变形加工,但在操作方式上是不一样的。冷镦属于较小型工件的锻造变形,常用于紧固件工业。而冷挤压则属于较大型工件的挤压变形,用途较广泛;冷镦相当于是冷挤压的一个分枝,简单的来说做螺栓的工艺中,六角头成形属冷镦,杆部缩径属冷挤(正挤)。非切边六角法兰面螺栓(多工位成形)即有冷镦又有冷挤,六角螺母成形前边整形只有冷镦,后边工序挤孔属冷挤(正反挤)。
点击进入五金商城,了解更多五金信息
-
我的第一本C++书 游历C++世界的地图 PDF 电子书
2012-06-03 19:14:205.2.1 用体积换速度的内联函数 5.2.2 内联函数的使用规则 5.3 重载函数 5.3.1 重载函数的声明 5.3.2 重载函数的解析 5.4 函数设计的基本规则 5.4.1 函数声明的设计规则 5.4.2 函数体的设计规则 第... -
基于AT89S52 单片的频率计
2010-01-04 08:47:37晶振两边的电容:晶振的标称值在测试时有一个“负载电容”的条件,在工 作时满足这个条件,振荡频率才与标称值一致。一般来讲,有低负载电容(串 联谐振晶体),高负载电容(并联谐振晶体)之分。在电路上的特征为:... -
Vue源码学习(十二)异步组件
2020-04-16 00:35:55异步组件是vue性能优化的一种方式,主要目的是为了解决页面引入很多组件导致打包后的js体积过大,我们知道同样条件下,文件体积越大,请求耗时越长,因此 vue提供了异步组件,当页面中通过异步方式来声明(全局)...本文主要讲述vue中的异步组件,如果你看完本文相信你应该对vue中的异步组件有着相对深刻的理解,
如果你还不知道vue中异步组件是什么,请参考vue异步组件为什么要异步组件
异步组件是vue性能优化的一种方式,主要目的是为了解决页面引入很多组件导致打包后的js体积过大,我们知道同样条件下,文件体积越大,请求耗时越长,因此
vue提供了异步组件,当页面中通过异步方式来声明(全局)或者注册(局部)组件时,每个异步组件会被单独打包成一个js文件,每个异步组件对应的js文件在需要时才会被加载。
通过减小打包文件体积的方式实现了性能优化。组件按需加载通常使用在路由中,但页面上其他组件也可以通过异步组件实现懒加载
App.vue<template> <div> <Foo/> <button @click="getBar">查看bar组件</button> <button>查看fooBar组件</button> <Bar v-if="showBar"/> </div> </template> <script> import Foo from './Foo.vue' export default { data() { return { showBar: false } }, components: { Foo, }, methods:{ getBar() { this.$options.components.Bar = function(resolve) { require(['./Bar.vue'], resolve) } this.showBar = true } } } </script>
Foo.vue
<template> <div> {{msg}} </div> </template> <script> export default { name: 'foo', data() { return { msg: 'foo-comp' } } } </script>
Bar.vue
<template> <div> {{msg}} </div> </template> <script> export default { name: 'bar', data() { return { msg: 'bar-comp' } } } </script>
Bar组件会被单独打包成0.bundle.js,页面初始化加载不会请求js文件,当点击查看bar组件时,会请求0.bundle.js,并在页面上渲染Bar组件。
这里提供了一种思路从而实现了非路由组件的按需加载。那么路由组件的按需加载使用起来就比较简单,路由组件直接使用异步组件方式引用即可。异步组件和普通组件的区别声明
普通组件无论时全局组件还是局部组件都是一个对象,而异步组件定义为一个函数或者一个Promise。
异步组件声明有如下三种方式,函数式和Promise以及高级异步组件
函数式Vue.component('async-webpack-example', function (resolve) { // 这个特殊的 `require` 语法将会告诉 webpack // 自动将你的构建代码切割成多个包,这些包 // 会通过 Ajax 请求加载 require(['./my-async-component'], resolve) })
import语法
webpack import语法会返回一个Promise{ ... components: { Bar: () => import('./Bar.vue') } ... }
高级异步组件
const AsyncComponent = () => ({ // 需要加载的组件 (应该是一个 `Promise` 对象) component: import('./MyComponent.vue'), // 异步组件加载时使用的组件 loading: LoadingComponent, // 加载失败时使用的组件 error: ErrorComponent, // 展示加载时组件的延时时间。默认值是 200 (毫秒) delay: 200, // 如果提供了超时时间且组件加载也超时了, // 则使用加载失败时使用的组件。默认值是:`Infinity` timeout: 3000 })
局部异步组件建议使用import语法,相对函数式声明更加简洁
源码分析
下面分别从源码角度分析函数式异步,import语法和高级异步组件,主要涉及到createComponent和resolveAsyncComponent两个函数
函数式
export function createComponent ( Ctor: Class<Component> | Function | Object | void, data: ?VNodeData, context: Component, children: ?Array<VNode>, tag?: string ): VNode | Array<VNode> | void { if (isUndef(Ctor)) { return } const baseCtor = context.$options._base if (typeof Ctor !== 'function') { if (process.env.NODE_ENV !== 'production') { warn(`Invalid Component definition: ${String(Ctor)}`, context) } return } // async component let asyncFactory if (isUndef(Ctor.cid)) { asyncFactory = Ctor Ctor = resolveAsyncComponent(asyncFactory, baseCtor) if (Ctor === undefined) { // return a placeholder node for async component, which is rendered // as a comment node but preserves all the raw information for the node. // the information will be used for async server-rendering and hydration. return createAsyncPlaceholder( asyncFactory, data, context, children, tag ) } } data = data || {} // resolve constructor options in case global mixins are applied after // component constructor creation resolveConstructorOptions(Ctor) // transform component v-model data into props & events if (isDef(data.model)) { transformModel(Ctor.options, data) } // extract props const propsData = extractPropsFromVNodeData(data, Ctor, tag) // functional component if (isTrue(Ctor.options.functional)) { return createFunctionalComponent(Ctor, propsData, data, context, children) } // extract listeners, since these needs to be treated as // child component listeners instead of DOM listeners const listeners = data.on // replace with listeners with .native modifier // so it gets processed during parent component patch. data.on = data.nativeOn if (isTrue(Ctor.options.abstract)) { // abstract components do not keep anything // other than props & listeners & slot // work around flow const slot = data.slot data = {} if (slot) { data.slot = slot } } // install component management hooks onto the placeholder node installComponentHooks(data) // return a placeholder vnode const name = Ctor.options.name || tag const vnode = new VNode( `vue-component-${Ctor.cid}${name ? `-${name}` : ''}`, data, undefined, undefined, undefined, context, { Ctor, propsData, listeners, tag, children }, asyncFactory ) // Weex specific: invoke recycle-list optimized @render function for // extracting cell-slot template. // https://github.com/Hanks10100/weex-native-directive/tree/master/component /* istanbul ignore if */ if (__WEEX__ && isRecyclableComponent(vnode)) { return renderRecyclableComponentTemplate(vnode) } return vnode }
export function resolveAsyncComponent ( factory: Function, baseCtor: Class<Component> ): Class<Component> | void { const owner = currentRenderingInstance if (owner && !isDef(factory.owners)) { const owners = factory.owners = [owner] let sync = true let timerLoading = null let timerTimeout = null ;(owner: any).$on('hook:destroyed', () => remove(owners, owner)) const forceRender = (renderCompleted: boolean) => { for (let i = 0, l = owners.length; i < l; i++) { (owners[i]: any).$forceUpdate() } if (renderCompleted) { owners.length = 0 if (timerLoading !== null) { clearTimeout(timerLoading) timerLoading = null } if (timerTimeout !== null) { clearTimeout(timerTimeout) timerTimeout = null } } } const resolve = once((res: Object | Class<Component>) => { // cache resolved factory.resolved = ensureCtor(res, baseCtor) // invoke callbacks only if this is not a synchronous resolve // (async resolves are shimmed as synchronous during SSR) if (!sync) { forceRender(true) } else { owners.length = 0 } }) const reject = once(reason => { process.env.NODE_ENV !== 'production' && warn( `Failed to resolve async component: ${String(factory)}` + (reason ? `\nReason: ${reason}` : '') ) if (isDef(factory.errorComp)) { factory.error = true forceRender(true) } }) const res = factory(resolve, reject) sync = false // return in case resolved synchronously return factory.loading ? factory.loadingComp : factory.resolved }
createComponent创建组件vnode,如果是异步组件,那么Ctor.cid为undefined,会执行
Ctor = resolveAsyncComponent(asyncFactory, baseCtor)
在resolveAsyncComponent方法中,会将当前组件或根实例添加到owners中,也就是异步组件的拥有者。
调用once方法包装异步组件声明中的resolve和reject函数,然后执行factory函数,此时会加载组件也就是执行realComp = require('./my-async-component')
,
realComp(伪代码)为真实组件
请求文件是一个异步过程,此时sync为false,文件请求成功后会执行resolve函数,调用ensureCtor方法将realComp转化我组件构造器。此时sync为false,会调用forceRender方法
forceRender中会遍历owers,调用根实例或组件实例的forceUpdate方法,此时会进入新一轮的渲染,在执行到createComponent方法时,会再次执行resolveAsyncComponent,返回
factory.resolved也就是ensureCtor方法生成的组件构造器,此时会创建真正的组件vnode.最终渲染后的dom会取代之前的注释节点。import语法
const res = factory(resolve, reject) if (isObject(res)) { if (isPromise(res)) { // () => Promise if (isUndef(factory.resolved)) { res.then(resolve, reject) } } }
执行factory函数也就是
() => import('./Foo.vue')
返回的res为Promise,isPromise(res)
为true但factory.resolved为undefined,所以此时会执行resolve函数,从而执行forceRender,后续步骤和
函数声明的异步组件相同。高级异步组件
高级异步组件只是在组件的渲染过程中增加了loading,error,和comp,loading对应加载中组件,error为渲染失败时展示组件,如果定义了loading属性,并且delay不为0,那么高级异步组件整个成功的渲染过程不会
被渲染成注释节点,而是LoadingComp=>TargetCompent,即Loading组件和真正渲染的组件MyComponent总结
非高级异步组件渲染过程: 渲染成注释节点,请求到组件后会调用forceUpdate方法强制根实例或者组件实例更新,此时factory.resolved为Ctor,第二轮更新的过程和普通组件相同
高级异步组件只是功能相对丰富,函数返回的对象具有loading和error属性,增加了异步组件的功能,方便展示请求中和请求失败的效果。其本质和普通异步组件相同,不过是增加了几个分支。
-
LLC谐振电路(二) 同步整流技术
2019-02-17 13:09:14随着开关电源市场金正日益激烈和用户需求日益增高,DC/DC变换器有时需要较高的功率密度以满足用户的需求,但在同样的频率下,DC/DC变换器功率密度越高,其单位体积散发的热量就越多,不利于变换器散热处理。... -
论文研究 - 镉离子
2020-05-25 00:19:22用18冠-6醚(L)在298 K下将水中的CdI2萃取到10... 同样,分别用logKex,ip对logKD,L的规则溶液理论图和logKD,CdL的拟图,确定了j = CdLI2和CdL2 +的摩尔体积(Vj / cm3·mol-1)。 在此,KD,L表示L在两相之间的分布 -
oracle学习文档 笔记 全面 深刻 详细 通俗易懂 doc word格式 清晰 连接字符串
2017-05-06 20:26:52oracle 甲骨文 获得最高认证级别的ISO标准安全认证,性能最高, 保持开放平台下的TPC-D和TPC-C的世界记录。但价格不菲 大型企业 db2 IBM DB2在企业级的应用最为广泛, 在全球的500家最大的企业中,几乎85%以上用DB2... -
计算机应用技术(实用手册)
2011-07-29 16:32:16此项目可选择硬盘开机的优先级,按下的按键,你可以进入它的子选单,它会显示出已侦测到可以让您选择开机顺序的硬盘,以用来启动系统。当然,这个选项要在你安装了两块或者两块以上的系统才能选择! HDD Change ... -
电脑高手必备 Windows系统35招实用技巧
2009-06-11 14:42:10用户身份登录的情况下,临时为自己分配管理权限的简单方法。在右键单击 程序安装文件的同时按住“Shift”键。在随后出现的快捷菜单中单击“运行 方式”,输入具有相应管理权限的用户名和密码。这种方式对于开始... -
嗨,送你一张Web性能优化地图
2021-01-08 14:30:23延迟加载所有体积较大的组件、字体、JS、视频或Iframe是一个好主意 <h3>4.3 优先加载关键的CSS <p>CSS资源的加载对浏览器渲染的影响很大,默认情况下浏览器只有在完成<code><head>标签中CSS的加载与... -
c语言编写单片机技巧
2009-04-19 12:15:17在应用中,一般是将微处理器装配在专门设计的电路板上,在母板上只保留和嵌入式相关的功能即可,这样可以满足嵌入式系统体积小和功耗低的要求。目前的嵌入式处理器主要包括:PowerPC、Motorola 68000、ARM系列... -
c++ 面试题 总结
2009-09-16 08:44:4016位的系统下, int i = 65536; cout ; // 输出0; int i = 65535; cout ; // 输出-1; 32位的系统下, int i = 65536; cout ; // 输出65536; int i = 65535; cout ; // 输出65535; A2: int a = ~0; if( a>... -
精易模块[源码] V5.15
2015-03-21 22:03:376、修正“文本_取中间_批量”当参数限定长度不要时,不能继续向下执行的BUG,感谢易友【半个灵魂づ留着】代码。 7、删除“文本_取中间_批量1”命令。 8、修复“注册表操作Ex->写入键值Ex”创建项,重启丢失的BUG,... -
第四章介绍了各种不同环境下cnchar的使用差异 第五章详细介绍了cnchar及其功能库的API使用 第六章列举了各个方法的参数和大量的cnchar使用实例 第七章介绍了一些cnchar使用案例 0.快速使用 使用 npm 安装: npm i ...
-
前端知识体系整理(不断更新)
2020-12-27 10:25:59<ul><li>对象的继承</li><li>非构造函数的继承:继承可以简单使用对象之间的深、浅拷贝</li><li> 构造函数的继承:大多是基于原型的继承,但是阅读性差,也不利于扩展 <ol><li>借调:... -
深入理解 webpack 文件打包机制
2020-11-22 18:44:04而是当用户达到某种条件(如:点击按钮)才去异步加载 utilC,这时候我们需要将 utilC 抽离成单独文件,当用户需要的时候再去加载该文件。</li></ol> 那么 webpack 需要怎么配置呢? <pre>...
-
VC实现teechart时间轴自右向左推移-C++代码类资源
-
学军 20210302 测试 解题报告
-
Appscan_STD_10.0.4_Patch.zip
-
2021-03-03
-
maven更新慢等问题换镜像
-
Navicat for MySQL
-
【C++】迭代器
-
app软件测试全栈系列精品课程
-
graphics的lib-ok.7z
-
MySQL 高可用(DRBD + heartbeat)
-
华为1+X——网络系统建设与运维(高级)
-
Gens2.14cn.rar
-
弘阳地产高管再变动:曾俊凯进、张良等人退,对千亿规模避而不提
-
蓝桥杯练习-3.3
-
2021-03-03
-
【毕业答辩】论文答辩过不了?做好这几点,再也不用担心自己被“仍论文”
-
Python基于Flask人力资源管理系统设计
-
iFIX简单分类说明.doc
-
【考研打卡】Day031——2021.03.03
-
【爱码农】C#制作MDI文本编辑器