• 2024-07-03使用ElementUI组件库
    引入ElementUI组件库        1.安装插件npmielement-ui-S    2.引入组件库importElementUIfrom'element-ui';    3.引入全部样式import'element-ui/lib/theme-chalk/index.css';    4.使用Vue.use(ElementUI);    
  • 2024-07-02ast数据类型补充和基础代码注释-cnblog
    ast解析代码树//声明一个变量obj,并赋值一个对象letobj={//对象的属性name,值为字符串"大猩猩"name:"大猩猩",//对象的方法add,接受两个参数a和badd:function(a,b){//返回参数a和b的和加上1000returna+b+1000;
  • 2024-06-23【JavaScript脚本宇宙】编写可靠代码:探索最佳JavaScript类型检查解决方案
    掌握类型安全:选择适合您的JavaScript类型检查工具前言JavaScript作为一种动态类型语言,在大型项目的开发中常常会遇到类型错误和难以调试的问题。为了解决这些问题,出现了各种类型的JavaScript类型检查工具。这些工具能够帮助开发人员在代码编写过程中及时发现潜在的类型错
  • 2024-06-11一些 vue2 项目中遇到的问题
    一些vue2项目中遇到的问题`Parsingerror:NoBabelconfigfiledetectedforxxx`参考Parsingerror:NoBabelconfigfiledetectedforxxxEitherdisableconfigfilecheckingwithrequireConfigFile:false,orconfigureBabelsothatitcanfindthe
  • 2024-06-09jest 单元测试
    jest单元测试关键词解释describe用于对测试用例进行逻辑分组,使得测试代码更加有组织、易读expect用于验证代码的行为是否符合预期test用于定义测试用例toBe相当于===,即全等toEqual相当于==运行命令//index.test.jsdescribe('group',()=>{test('sumfunction
  • 2024-06-01polyfill
    Babel默认只转换新的JavaScript句法(syntax),而不转换新的API,比如Iterator、Generator、Set、Map、Proxy、Reflect、Symbol、Promise等全局对象,以及一些定义在全局对象上的方法(比如Object.assign)都不会转码。举例来说,ES6在Array对象上新增了Array.from方法。Babel就不
  • 2024-06-01Babel 转码器
    Babel是一个广泛使用的ES6转码器,可以将ES6代码转为ES5代码,从而在老版本的浏览器执行。这意味着,你可以用ES6的方式编写程序,又不用担心现有环境是否支持。下面是一个例子。//转码前input.map(item=>item+1);//转码后input.map(function(item){returnitem
  • 2024-05-15AST 简述
    AST是源代码的抽象语法结构的树状表示。利用它可以还原混淆后的js代码。@babel/parser是js语法编译器Babel的nodejs包,内置很多分析js的方法,可以实现js到AST的转换。JS转为AST:https://astexplorer.net/准备工作:需安装nodejs环境以及babel,babel安装:npminstall@bab
  • 2024-05-15前端问题记录
    1.前端npminstall时报错:PSD:\project\myProject\other\spring-boot-vue-master\spring-boot-vue-master\exam>npminstallnpmWARNconfigglobal`--global`,`--local`aredeprecated.Use`--location=global`instead.npmERR!codeERESOLVEnpmERR!ERESOLVE
  • 2024-05-04npm创建项目
    创建项目创建项目目录首先新建一个文件夹,这里存放着我们的项目。创建项目文件这里不使用任何项目模板,相当于使用空模板。进入这个文件夹,再cmd中运行npminit。然后按照提示输入packagename,项目名等等。每输入一个就回车。完成之后目录下会出现一个package.json项目文
  • 2024-05-01Vue | babel.config.js 配置详解
    babel.config.js 1概述Babel相当于一个中介,一边是用户,另一边是浏览器。这几年,JavaScript发生了很大的变化,许多新特性在很多浏览器里都不支持。Babel的主要作用就是规避这些问题,可以确保JavaScript代码兼容所有的浏览器,比如IE11。2Babel的工作原理Babel使用AST把
  • 2024-04-29Babel与core-js
    1.Babel是把ES6的语法转成ES5比如:const、箭头函数、...(结构)、模板字符串等等Babel原理转译分为三阶段:解析(Parse),将代码解析⽣成抽象语法树AST,也就是词法分析与语法分析的过程转换(Transform),对语法树进⾏变换方面的⼀系列操作。通过babel-traverse,进⾏遍历并作添加、更新、
  • 2024-04-28babel
    官网:https://babeljs.io/民间中文网:https://www.babeljs.cn/babel简介而今天的JS世界缺少一座巴别塔,不同版本的浏览器能识别的ES标准并不相同,就导致了开发者面对不同版本的浏览器要使用不同的语言,和古巴比伦一样,前端开发也面临着这样的困境。babel的出现,就是用于解决这样的
  • 2024-04-16使用rollup打包一个npm包
    使用rollup打包一个npm包前言:在这个都在使用npminstall,来安装包的时代,你是否想发布一个自己的npm包,或者你工作中是否要发布一个npm包,来到你的项目中到处使用呢?(不晓得npm是什么的请移步:npm)那么今天我们就来学习一下怎样打包一个自己的npm包1.首先准备环境node本地环境,vscod
  • 2024-04-15无痛接入flow.js
    前言:针对项目越来越大,js弱类型、动态类型捉襟见肘,导致项目维护成本越来越高,typeScript接入学习成本及vue兼容性等问题,考虑引入flow.js优点:静态类型检查,避免类型编码错误不影响线上代码打包,对线上代码影响小接入后可仅在需要的文件中使用项目接入流程如下:使用yarn、babel的
  • 2024-04-15vscode使用ES6装饰器器语法
    1.react项目配置package.json需要安装npmi@babel/plugin-proposal-decorators可能需要重启项目{"babel":{"plugins":[["@babel/plugin-proposal-decorators",{"legacy":true}
  • 2024-04-1342 Typescript编译配置-webpack-babel
    TS编译配置自动编译单个文件tsc1.ts#如果想要自动监视文件的变化,需要添加`-W`配置tsc1.ts-W自动编译整个项目初始化,会自动生成一个tsconfig.json文件,然后直接执行tsc命令,就可以对当前目录的所有ts文件进行编译,生成对应的js文件#初始化项目tsc--init#编译
  • 2024-04-07NodeJs通过async/await处理异步
    NodeJs通过async/await处理异步 场景远古时代我们在编写express后台,经常要有许多异步IO的处理。在远古时代,我们都是用chunk函数处理,也就是我们最熟悉的那种默认第一个参数是error的函数。我们来模拟一个Mongo数据库的操作,感受一下。mongoDb.open(function(err,db){
  • 2024-04-05@babel/plugin-transform-runtime 这个包的使用场景是什么
    @babel/plugin-transform-runtime是Babel转译工具的一个插件,用于处理JavaScript代码中的新语言特性和API。它的使用场景主要包括以下几个方面:避免全局污染:当使用Babel转译包含新特性的代码(如箭头函数、解构赋值、模板字符串等)时,Babel通常会生成辅助函数(helperfunct
  • 2024-03-30ts-jest无法编译执行ESM【解决步骤】
    很常见的错误就是SyntaxError:Unexpectedtoken'export',需要确保以下操作,才能解决问题tsconfig.json中compilerOptions.module与target要设置为ESNext,compilerOptions.target也要设置为ESNext,esModuleInterop设置为true,确定tsc将目标代码编译为ESM版本。其次m
  • 2024-03-28webpack快速上手
    针对仅有js文件设置打包入口和出口constpath=require('path')module.exports={entry:'./src/main.js',output:{filename:'bundle.js',path:path.join(__dirname,'output')}}package.json的scripts增加如下"build
  • 2024-03-24使用pnpm时,hoist-pattern[]=eslint hoist-pattern[]=babel这个配置的作用?
    在pnpm工作区(monorepo)中,hoist-pattern配置项用于决定哪些依赖应该被提升(hoist)到工作区的根节点node_modules目录中,而不是保留在每个工作区包各自的node_modules目录下。这有助于减少磁盘空间占用并加速依赖的安装速度。hoist-pattern[]=*eslint*和hoist-pattern[]=*babe
  • 2024-03-14webpack面试1
    一、谈谈对webpack的认识webpack是一个模块打包工具,它能够很好地管理与打包Web开发中所用到的HTML、JS、CSS以及各种静态文件(图片、字体等),让开发过程更加高效。对于不同类型的资源,webpack有对应的模块加载器(loader)来处理。webpack会分析模块间的依赖关系,最后输出优化且合并后的
  • 2024-03-10创建前后分离管理后台
    创建前后分离管理后台概述我们利用VUEELEMENTADMIN来快速搭建属于自己的产品后台**备注:使用该后台模板开发需要掌握NodeJS、ES2015+、vue、vuex、vue-router、axios和element-ui等前端技术栈相关知识。克隆模板到本地克隆vue-element-admin完整模板到本地,主要作
  • 2024-03-08webpack笔记
    babel和webpack的区别babelJS编译工具,不关心模块化webpack打包构建工具(模块话/构建工具),配合loaderplugin的集合babel不处理模块化,需要配合webpack一起使用 webpack5主要是内部效率的优化,使用没有区别webpack本身支持模块化import babel-polyfill会污染全