首页
学习
活动
专区
圈层
工具
发布

【油猴脚本】在 Iconfont 上直接复制 React component 代码

本文接上一篇《如何在项目中管理你的图标?》...Iconfont 和 SVG 优缺点对比 在上文中介绍了使用 iconfont 的缺点,以及使用 SVG 的优点,简单归纳为以下几点: Icon 的缺点 当网络不好的时候,会显示方块 如只使用一个图标,...在低端设备上 SVG 有更好的清晰度。 支持多色图标。 SVG 可以支持动画 并给出了最终方案,放弃使用字体,使用 SVG 代替 iconfont。...所以我写了一个油猴脚本,可以在 iconfont.cn 上直接复制 React component 代码,如此一来,我们就省去了配置 webpack 的烦恼。...直接使用 svgr playground 的接口 当我看到 svgr playground 的时候,我就想知道它的实现原理,打开控制台一看,我们连云函数都不用写了,它就是一个部署在 vercel 上的一个接口

2.5K20

React 项目精进技巧

1、工程化实践 umi+dva作为底层框架,Ant Design Mobile为 UI 组件库,是蚂蚁金服推崇的的react项目最佳实践,具有国际化、权限、数据流、配置式路由、补丁方案、自动化 external...,为了解决这个问题,React 16 引入了一个新的概念 —— 错误边界:错误边界 – React 懒加载 // index.js import React, { Component, lazy, Suspense...* 3,停止监听当前的节点 * @param {*} ele 监听的img元素类名,如 .imgBox * @param {*} callback * @param {*} watch 监听的变化数据...useEffect(()=>{ const nodes = document.querySelectorAll(ele); if(!...,给用户更好的浏览体验 src目录下建skeleton文件夹 写骨架屏的静态文件页面,如下 import React, { useState, useEffect } from 'react'; import

1.2K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    公司要求会使用框架vue,面试题会被问及哪些?

    如果你是一个已经在学习前端开发的初学者亦或者是一名在代码界纵横多年的程序员,那你一定知道现在最火的前端框架之一Vue.js。...使用了v-if的时候,如果值为false,那么页面将不会有这个html标签生成。...这两种对象只能选择一种使用,不能混合使用。而get和set属于存取描述符对象的属性。 //这个方法会直接在一个对象上定义一个新属性或者修改对象上的现有属性,并返回该对象。 <!...; 多了指令系统,让模版可以实现更丰富的功能,而React只能使用JSX语法; Vue增加的语法糖computed和watch,而在React中需要自己写一套逻辑来实现; react的思路是all in...如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件

    2.9K30

    面试中会被问及到的vue知识

    如果你是一个已经在学习前端开发的初学者亦或者是一名在代码界纵横多年的程序员,那你一定知道现在最火的前端框架之一Vue.js。...使用了v-if的时候,如果值为false,那么页面将不会有这个html标签生成。...这两种对象只能选择一种使用,不能混合使用。而get和set属于存取描述符对象的属性。 //这个方法会直接在一个对象上定义一个新属性或者修改对象上的现有属性,并返回该对象。 <!...; 多了指令系统,让模版可以实现更丰富的功能,而React只能使用JSX语法; Vue增加的语法糖computed和watch,而在React中需要自己写一套逻辑来实现; react的思路是all in...如何在 vue 项目里正确地引用 jquery 和 jquery-ui的插件

    2.9K30

    学习zepto.js(Hello World)

    $():   与jQuery的$()几乎一样,但zepto的选择器是直接使用的原生querySelectorAll(),所以,一些jQuery自定义的选择器是不支持的,但可以添加selector.js...标签*//*以上为作为选择器的使用方法*/ $(function(){ //do...用过jQuery的应该都知道,这是绑定的DOMContentLoaded 事件 })   当$变量已经存在时,如引用了...通过$.fn[方法名]定义的为原型的方法; 通过$[方法名]定义的为类方法; fragment(): 该方法用来生成一个dom节点并返回 ?...该方法接收最多三个参数,   第一个为html值,可以只是一个标签,如(“”)、或一个html片段,如(“hello”);   第二个为一个标识符,用来确定标签类型,该变量主要用于对表格类元素进行一些特殊的处理...可以看到这基本上是为了表格而做的- -(本人猜测是因为如果直接将div的innerHTML值赋值为”“的话会在外侧自动生成tbody,table等标签的。懒得试了,应该是的。。。)

    4.2K80

    React 实现 PDF 文件在线预览 - 手把手教你写 React PDF 预览功能

    本次教程中使用的技术栈 Vite React Typescript pdf.js 快速搭建项目 > yarn create vite pdf-preview --template react-ts 现在我们安装下...admin 后台管理框架测评推荐》 PDF 文本选择 在一些特殊场景,可能会需要支持用户复制PDF上的文字,很显然 图片中的文字不能被选中。...Echarts 使用教程 - 如何在 React 加入图表 》 React PDF 在线预览源代码 本次教程的代码可以在 github 上查看 假如你只需要预览 PDF 并且不关心浏览器兼容,那么使用...table 表格组件测评推荐》 React PDFjs 搭建总结及卡拉云 本文介绍了如何在 React 中实现 PDF 预览功能。...如果不想处理前端问题,推荐使用卡拉云,卡拉云内置各类组件,无需懂任何前端,仅需拖拽即可快速生成。

    6K20

    【JS】1724- 重学 JavaScript API - Drag and Drop API

    游戏中的元素拖放操作,如棋盘游戏中的棋子移动等。...在放置目标容器上,我们使用 dragover 事件阻止默认行为并添加一些过渡样式,使用 dragleave 事件移除过渡样式,使用 drop 事件在放置目标容器中追加拖动的图片元素。...通过这样的实现,用户可以通过拖动任务卡片来进行排序、分组或更改任务状态。 3.3 页面生成器 拖放 API 在页面生成器应用程序中也有广泛的应用,尤其是海报设计器、低代码平台等。...提供了丰富的事件和方法,使开发者可以自定义拖放行为。 缺点: 在某些较旧的浏览器中可能存在兼容性问题。 拖放操作可能受到设备的限制,如移动设备上的触摸操作。...使用现有的拖放库或框架,以简化拖放操作的实现。 注意性能问题,特别是在处理大量拖放元素时。 考虑移动设备上的触摸操作,确保拖放功能在移动设备上的可用性和易用性。

    1.8K20

    用一次就爱上的 Array.from —— 构建 m*n 数组的绝对优雅姿势

    2、用 Array.from 配合函数工厂生成多维数组 使用 Array.from,我们可以为每一项动态生成一个新数组实例: const matrix = Array.from({ length...这行代码的含义是: 创建一个长度为 m 的数组 对每一项调用函数 () => Array(n).fill(0),生成一个新的数组 从而生成一个结构上完全独立的二维数组...类数组与可迭代对象之间没有确定的关系: 常见类数组名称 示例 是否可迭代 arguments 对象 函数内部的 arguments ❌(ES6 前) DOM 的 NodeList document.querySelectorAll...,没有特别的语义,你完全可以换成别的任意变量名。...高效工作流:用Mermaid绘制你的专属流程图;如何在Vue3中导入mermaid绘制流程图

    24610

    如何在 React TypeScript 中将 CSS 样式作为道具传递?

    本文将介绍如何在使用 React TypeScript 时,将 CSS 样式作为道具(Props)传递给组件。...: React.CSSProperties;}该接口描述了 Button 组件将使用的道具。其中,className 用于传递 CSS 类名,而 style 则用于传递 CSS 样式对象。...;};在这个示例中,我们定义了一个简单的 Button 组件。它接受一个 ButtonProps 对象作为参数,并在 button 元素上设置了接收到的类名和样式。...然后,我们将这个类名和传递的自定义类名合并在一起,以便应用于按钮元素。使用 CSS 模块化技术,可以更加安全、简便地管理和维护 CSS 样式。...总结本文介绍了如何在 React TypeScript 中将 CSS 样式作为道具(Props)传递给组件。我们首先创建了一个描述道具的接口,并且在 Button 组件中使用了这些道具。

    4.4K30

    干货 | 瘦身50%-70%,携程 Taro 小程序样式 Size 缩减方案

    它首先会处理原 SCSS 文件中的类选择器,将类名进行哈希处理得到新类名如 index-module__test___Bm2J6 ,生成新的样式代码输出到最终的 index.wxss,同时保存了原类名与哈希处理后的新类名的映射关系...其中 ClassName 前面的 - ,用于防止新生成的类名与未转换的类名冲突。...本插件会将样式文件中的仅使用了类选择器的 CssRule 进行 PropertyValue 拆分,每一次拆分都会生成新的 PropertyValue ClassName。...这样处理后的新类名可读性很差,开发者不能很好的定位到原类名代码。因此在开发环境下,会在更短且更多的新类名前会加上[文件夹_文件名_原类名]。保留了原类名相关信息,便于开发者查找原类名。...7.1 CSS-Modules-transform 插件 该插件支持让项目现有 JS 代码快速转成 cssModules 语法,将原类名使用方式,一键替换成本方案要求的类名使用语法,如 classname

    1K30

    Lumos——一款由大模型Ollama提供的本地LLM浏览网页Chrome扩展

    推理操作在您的本地机器上完成,不需要任何外部服务器支持。然而,由于Chrome扩展平台的安全限制,该应用确实依赖于本地服务器支持以运行LLM。...•Ollama(首页)[6]•Ollama(GitHub)[7] 使用场景 •摘要长线索在问题追踪网站、论坛和社交媒体网站上。•新闻文章摘要。•关于商业和产品页面上的评论提问。•关于长篇技术文档提问。...ollama serve 终端输出: 2023/11/19 20:55:16 images.go:799: 总共blobs:6 2023/11/19 20:55:16 images.go:806: 移除的未使用...它正确地将React打包在生产模式下,并优化构建以获得最佳性能。 构建被压缩,文件名包含哈希。您的应用准备好部署了! 有关更多信息,请参阅部署[11]部分。...()查询•selectorsAll:执行以检索页面内容的document.querySelectorAll()查询 参见文档如何创建自定义内容解析器[14]。

    3.8K10

    webapi(一)初识DOM&定时器

    DOM树 含义: 将HTML文档以树状结构直观地表现出来 作用: 直观地体现了标签与标签之间的关系 DOM对象 含义: 浏览器根据html标签生成的JS对象 核心思想: 把网页内容当作对象来处理...querySelectorAll() 方法获取到的元素不能直接修改,因为获取到的是多个,需要配合for循环遍历修改。...无论有无获取到元素,querySelectorAll() 始终获取的是伪数组 伪数组与数组最大的不同,就是伪数组不能使用数组的pop , push等方法 例如: // 没有div元素 let divs... 有覆盖问题:是用className赋值会覆盖以前的类名 2. classList 属性 语法: // 获取到当前DOM元素他的一个 类的集合列表 元素.classList // 添加一个类...元素.classList.add('类名') // 删除一个类 元素.classList.remove('类名') // 切换一个类 元素.classList.toggle('类名') // 检测一个元素是否有某个类名

    78720

    深入Playwright:掌握自定义选择器与定位器技巧

    在日常的Web自动化测试中,我们都遇到过这样的场景:页面上那些没有规范属性、动态生成的元素,让编写稳定的选择器变成了一场噩梦。...上周我就花了整整一个下午,只为了定位一个不断变换class名的下拉菜单——这种情况在如今的单页应用中太常见了。如果你也厌倦了脆弱的CSS选择器,那么自定义选择器与定位器将是你的解放工具。...先看看这个典型的痛点场景:你正在测试一个React应用,发现页面上的按钮是这么写的:的是,在大型项目中,这种样式类名变动几乎无法避免。自定义选择器:定义自己的定位策略Playwright允许你注册自定义选择器引擎,这有点像定义自己的定位“方言”。让我通过一个实际例子来演示。...处理动态内容和影子DOM现代Web组件经常使用影子DOM,这给自动化测试带来了额外的挑战。

    17611

    Web APIs第一天

    设置/修改DOM元素内容 DOM对象都是根据标签生成的,所以操作标签,本质上就是操作DOM对象, 就是操作对象使用的点语法。...操作类名(className) 操作CSS 如果修改的样式比较多,直接通过style属性修改比较繁琐,我们可以通过借助于css类名的形式 由于class是关键字, 所以使用className去代替 className...是使用新值换旧值, 如果需要添加一个类,需要保留之前的类名 可以同时修改多个样式 直接使用 className 赋值会覆盖以前的类名 // 使用ClassName修改样式 可修改多个样式 但会覆盖以前类名...通过 classList 操作类控制CSS 为了解决className 容易覆盖以前的类名,我们可以通过classList方式追加和删除类名 修改大量样式的更方便 修改不多样式的时候方便 classList...是追加和删除不影响以前类名 // 使用ClaaList修改样式 修改样式方便 追加删除不影响以前类名 let num1 = document.querySelector('.one1') // add

    2.1K30

    jQuery VS JavaScript原生API

    但JS原生API写法依旧;并且有时候只不过小写一个Demo,或者产品中只有少量的前端效果或DOM操作,就去花时间&空间引入jQuery,或者React?不免有取宰牛之刀以杀鸡之嫌。...在jQuery的温柔乡里,是否还能记得原生她javascript原生?如果仅为使用个选择器($)或者类似的东西,是否真的有必要加载jQuery?故此了解下JS常用原生写法还是蛮有必要的。...[update-2015-12-07]有看到抛弃jQuery,拥抱原生JavaScript一文中提到,jQuery 代表着传统的以 DOM 为中心的开发模式,但现在复杂页面开发流行的是以 React 为代表的以数据.../状态为中心的开发模式; React、Angular、Vue 等框架的流行,直接操作 DOM 不再是好的模式,jQuery 使用场景大大减少。...====================================// // 原生方法 var newEl = document.createElement('div'); 添加/移除/切换类

    2K60

    🚀🚀🚀Astro:一个可以同时写React、Vue、Svelte、SolidJS等多种语言的框架

    「服务器优先」:网站在服务器上渲染 HTML 时运行速度更快。「默认快速」:在 Astro 中构建缓慢的网站是不可能的。「易于使用」:您不需要成为专家即可使用 Astro 构建某些内容。...它们是纯 HTML、无需客户端运行时的模板组件。你可以通过文件扩展名 .astro 来写 Astro 组件。... // 在页面上找到所有带有 `alert` 类的按钮。...const buttons = document.querySelectorAll('button.alert'); // 处理每个按钮上的点击事件。...❞下面是我添加的 react、vue 框架的 count 功能组件:图片 总结Astro 是一个以内容为中心的框架,默认服务端渲染,尽量没有JavaScript,所以速度很快。

    2K50

    在React项目中使用CSS Module

    此外,它是一种通过生成一个随机字符串作为className名称并添加一个唯一的哈希来使每个className都唯一的工具,从而防止和全局作用域冲突。我们可以使用CSS模块来防止CSS类的命名冲突。...当使用CSS模块在浏览器中呈现时,它会生成随机的CSS类,只有在仔细检查页面时才可见。 好了,天不早了,干点正事哇。 ---- 1....CSS模块使用语法 现在属于SPA的天下,那在使用框架时候就绕不开,模块化构建工具(如Webpack、vite、Rspack)来管理样式。 下面我们简单分别介绍一下,它们对CSS模块的支持程度。...在下面的代码中,我们演示了如何在React组件中利用CSS Modules。 函数组件 在React函数组件中,我们将使用CSS Modules。...这意味着任何地方都可以使用 .class 类名,而不受模块化的限制。

    3.1K50

    React组件设计实践总结03 - 样式的管理

    解决的方向: 生成唯一的类名; shadow dom; 内联样式; Vue-scoped 方案 2️⃣ 依赖 由于 CSS 的’全局性’, 所以就产生了依赖问题: 一方面我们需要在组件渲染前就需要先将...因为原生 CSS 一般有开发者由配置类名(在 html 或 js 动态指定), 所以工具很难对类名进行控制. 压缩类名也会降低代码的可读性, 变得难以调试....学习对 CSS 相关技术进行选型决策 社区上最流行的, 也是笔者觉得使用起来最舒服的是styled-components, styled-components 有下列特性: 自动生成类名, 解决 CSS...通过组件名来标志样式, 自动生成唯一的类名, 开发者不需要为元素定义类名. 绑定组件....特性: 比较轻量, 不需要 JS 运行时, 因为他在编译阶段进行计算 所有样式默认都是 local, 通过导入模块方式可以导入这些生成的类名 可以和 CSS proprocessor 配合 采用非标准的语法

    8.2K20
    领券