在上文中介绍了使用 iconfont 的缺点,以及使用 SVG 的优点,简单归纳为以下几点:
注意:在webpack.config.dev.js添加的配置部分,也需要在webpack.config.prod.js中做相同的配置。否则可能导致项目发布上线后,报错无法执行。
antd是基于less开发的,我们使用less可以方便的改变主题色等配置。
Ant Design 的 Icon,是在"确定"和"自然"的设计价值观影响下的一套美观、一致、易用、便于延展的图标体系;
使用该插件,可以在编辑过程中去计算 loader 跟 plugin 的运行时间,针对性的看下某个环境构建速度过慢的原因
npx-cli.js –ignore-existing create-react-app . –scripts-version –typescript
最近在业务中开发了一套定制化的 C 端组件库,在这个过程中遇到了一些组件库技术选型和设计的问题,在参考公司内外的多个组件库后确定了最终的方案。本文希望通过向读者介绍技术选型的过程中的方案比较和组件库设计中的考量,让读者在组件库的技术选型和设计上有所启发。
在上一篇《从零搭建react+ts组件库(一)项目搭建与封装antd组件》介绍了使用webpack来搭建一个基于antd的组件库的基本框架,但是作为一个组件库,实际上还有很多的都还未引入,本篇将会补充less模块化以及svg引入的基本方式。
以上截图出自antd的Icon组件(https://ant.design/components/icon-cn/)
本文主要讨论基于webpack5+TypeScript的React项目(cra、craco底层本质都是使用webpack,所以同理)在2023年的今天是如何在项目中使用svg资源的。
静态资源处理是前端工程经常遇到的问题,在真实的工程中不仅仅包含了动态执行的代码,也不可避免地要引入各种静态资源,如图片、JSON、Worker 文件、Web Assembly 文件等等。
使用 iconfont 有很多优势,比如只需要加载一次,全部图标都可以设置字号大小,颜色、透明度等,可以随意变换字体的形态,并且图标是矢量的,不会随着字体大小的变化失真,得益于 iconfont.cn 提供的便利,大多情况下,我们不必上传自己的图标,只需要便捷的搜索,就可以将图标加入到自己的项目图标库中,但最近工作中却遇到了比较严重的问题。
Mako是一个新的Web打包工具,适用于Web应用、库和框架。它被设计得快速、可靠且易于使用。Mako已被数百个生产项目中使用。如果你正在寻找一个现代的Web打包工具,Mako是正确的选择。
这个库给的示例代码是 webpack.config.js 但是我们现在在用的是 Vue
官方文档:https://webpack.docschina.org/loaders/url-loader/
SVG 是一种可缩放矢量图形(Scalable Vector Graphics,SVG)是基于可扩展标记语言(XML),用于描述二维矢量图形的图形格式。SVG 由 W3C 制定,是一个开放标准。
-多年互联网运维工作经验,曾负责过大规模集群架构自动化运维管理工作。 -擅长Web集群架构与自动化运维,曾负责国内某大型金融公司运维工作。 -devops项目经理兼DBA。 -开发过一套自动化运维平台(功能如下): 1)整合了各个公有云API,自主创建云主机。 2)ELK自动化收集日志功能。 3)Saltstack自动化运维统一配置管理工具。 4)Git、Jenkins自动化代码上线及自动化测试平台。 5)堡垒机,连接Linux、Windows平台及日志审计。 6)SQL执行及审批流程。 7)慢查询日志分析web界面。
将打包后的dist文件夹上传到服务器上部署(nginx、tomcat都可以,我的环境是nginx),访问:
接着请同学们打开 package.json 文件,删除 eslintConfig 和 browserslist 字段,删除所有 eslint 、node-sass、sass-loader的依赖,如下图所示。
在 Web 开发中,我们经常会用到 icon,icon 的使用经历了从图片到字体,再到 svg 的演变过程,也产生出相应的 icon 库,如雪碧图、Font Awesome、Iconfont 等等。
作者:wenjuanrao,腾讯 PCG 前端开发工程师 最近梳理了下以前 webpack 的相关开发经验,整理和总结了一份入门笔记,欢迎大家围观和批评指正。 随着 web 应用越来越复杂和庞大,前端技术迅猛发展,各路大神各显神通,多种优秀的前端框架、新语言和其他相关技术(如下图所示)不断涌现,这些都极大地提高了我们的开发效率。 前端技术栈 然鹅,我们都知道这些技术都有一个共同点,那就是源代码都无法直接在浏览器上运行。此时,我们就需要通过构建工具将这些代码转换成浏览器可执行的 JS、CSS、HTM
来源 | https://www.jianshu.com/p/182b69e54fe8
高级也就是相对于基础的优化。从以下角度进行优化: 提升开发体验; 提升打包构建速度 减少代码体积 优化代码运行性能
在这个内卷为王的时代,内卷文化已经渗透到工作和生活的方方面面。不在知识的海洋里翱翔,就会在知识的海洋里溺亡。作为一名新生代农民工,在智商与勤奋已经被工友大佬们双重碾压的同时,面对日新月异的搬砖(编程)技能,学习的速度已经赶不上遗忘的速度,可是还得强忍泪水拥抱变化、不断打怪升级。
Parcel是一款极速零配置WEB应用打包工具,快速、几乎零配置是它最大的特点,开箱即用。相比webpack,Parcel对于新手来说未尝不是一个很好的选择。
1.报错信息 新接手项目,vue+element,npm install. 时候报错信息如下。 error code ERR_SOCKET_TIMEOUT 9673 error network Socket timeout 9674 error network This is a problem related to network connectivity. 9674 error network In most cases you are behind a proxy or have bad networ
在前文 Webpack 打包优化之体积篇中,对如何减小 Webpack 打包体积,做了些探讨;当然,那些法子对于打包速度的提升,也是大有裨益。然而,打包速度之于开发体验和及时构建,相当重要;所以有必要对其做更为深入的研究,以便完善工作流,这就是本文存在的缘由。 减小文件搜索范围 在使用实际项目开发中,为了提升开发效率,很明显你会使用很多成熟第三方库;即便自己写的代码,模块间相互引用,为了方便也会使用相对路劲,或者别名(alias);这中间如果能使得 Webpack 更快寻找到目标,将对打包速度产生很是积极的
全文共6511字/词,阅读大概需要13分钟,太长不看党请直接移步👉「开始优化」部分直接查看优化手段 📷 背景 前段时间公司服务器网络波动,网站访问变慢,一些性能问题也随之暴露了出来。纷纷反馈在这样的弱网条件下,访问新项目时,加载了近1分钟都没加载出来,而访问其他页面顶多也就30-40s。 在网络恢复后,尝试访问了下页面,无缓存首次打开需要等待近11s的时间,最大的资源达到了3.7M... 在对项目做了一些优化处理后,再次无缓存打开可以发现网页几乎是秒开,平均耗时在1s以内 在这里总结记录一下,基本上都是一些
升级需要改动的文件包括分为package.js、 webpack.config.js、webpackDevServer.config 三处。
1.development 会将 process.env.NODE_ENV 的值设为 development。启用 NamedChunksPlugin 和 NamedModulesPlugin。
Vite 插件与 Rollup 插件结构类似,为一个name和各种插件 Hook 的对象:
有一个英语成语叫做一画胜千言(A picture is worth a thousand words),不知道大家有没有听过?它是指的是一张静态的图片就可表达一个复杂的概念或者与一个主题相关的图片有时比起详细的解释,能够更有效的描述有关主题。——“一画胜千言”维基百科 如果我们要用一句话来说明图标的作用,没有比这个成语更适合的词了。本篇文章,我们就来聊聊关于图标的一些事情。 ---- 一个图标的生命周期(工作流程) 关于图标的生命周期,在我个人所经历的开发项目中,有以下两种: 第一种方式:图标库(选择阶段)
从Vite 4.4开始,Vite实验性地支持Lightning CSS。你可以通过在你的配置文件中添加 css.transformer: 'lightningcss' 来选择它,并安装可选的lightningcss依赖:
目前主流框架react、vue、argular等(还有很多),国内大多数在Vue/React中,argular也有,但似乎用的不多。Vue3.x针对性能,渲染机制等也是一个不错的选择,不过抉择根据你的实际情况来定,我此次选择的是react,原因有很多,就不一一赘述了。
图像往往是任何特定网页上最大的资源。虽然许多开发者花时间优化网页性能的其他方面,但减少图像的大小对性能的影响比所有其他方面加起来还要大。这篇文章将纯粹关注于可用于减少图片大小的不同工具。
通过选择 development, production 或 none 之中的一个,来设置 mode 参数,你可以启用 webpack 内置在相应环境下的优化。其默认值为 production。
大家好,我是「柒八九」。一个「专注于前端开发技术/Rust及AI应用知识分享」的Coder
在上面的示例中,我们通过 output.filename 和 output.path 属性,来告诉 webpack bundle 的名称,以及我们想要 bundle 生成(emit)到哪里。可能你想要了解在代码最上面导入的 path 模块是什么,它是一个 Node.js 核心模块,用于操作文件路径。
CSS 是前端开发的重要组成部分,但是它并不完美,本文主要探讨 React 样式管理方面的一些解决方案,目的是实现样式的高度可定制化, 让大型项目的样式代码更容易维护.
其他的使用步骤一样, 参考样例, 其实其他的UI库的使用方式都一样, 没有啥好记得, 用的时候翻翻文档,就可以了
webpack 是一个现代 JavaScript 应用程序的静态模块打包器(module bundler)。当 webpack 处理应用程序时,它会递归地构建一个依赖关系图(dependency graph),其中包含应用程序需要的每个模块,然后将所有这些模块打包成一个或多个 bundle。 需要先理解四个核心概念: 入口(entry) 输出(output) loader 插件(plugins) 入口(entry) 入口指 webpack 构建其内部依赖图开始的模块。进入入口后,webpack 会找出有哪些
现如今 Vue 作为主流的前端框架之一,其健全的配套工具,活跃的开源社区,让广发码农热衷追捧。Vue CLI 作为其官方的开发构建工具,目前已更新迭代到 4.x 版本,其内部集成了日常开发用到的打包压缩等功能,简化了常规自己动手配置 webpack 的烦恼。另外提供的插件功能更是满足了使用者定制化的需求场景,那么本文就来讲下如何去开发一个插件。
写这篇文章是为了让自己在自学 webpack 的过程中有所产出,于是边读 webpack 中文文档 边写下了这篇文章,里面的很多实例都是直接挪用的文档中的实例,但在一些概念的理解上我加入了自己的想法「未必精确」,所以读的时候要抱着「怀疑的态度」。
系列文章传送门: 1、build/webpack.base.conf.js 2、build/webpack.prod.conf.js 3、build/webpack.dev.conf.js 4、build/utils.js 5、build/vue-loader.conf.js 6、build/build.js 7、build/dev-server.js 8、build/check-versions.js 9、../config/index.js 下面是build/webpack.base.conf.js中
这一次滴滴面试官问了很多问题,主要是围绕着简历去展开。有问了node进程,还有express等等。手撕的代码比较多,对,然后还变到了vue2和vue3,目前Vue3的话现在是全面使用。
仓库地址:https://github.com/necolas/react-native-web
1.一个Vue实例相当于一个MVVM模式中的ViewModel,在实例化的时候,我们可以传入一个选项对象,包含数据、模板、挂载元素、方法、生命周期勾子等选项
由于没有提前做好复习,所以有点匆忙,腾讯一面问的不难,从vue,react,webpack等等,倒是没准备好,导致回答的满头大汗~~
领取专属 10元无门槛券
手把手带您无忧上云