JavaScript
文章平均质量分 87
欢迎关注我的专栏JavaScript。JavaScript是一种脚本语言,也是一种动态类型、弱类型、基于原型的语言。它支持面向对象编程,命令式编程,以及函数式编程。
林晓lx
登高现红日,实践出真知!
展开
-
在VS Code中使用Snippet Craft扩展提高编码效率
扩展初始化时,插入了三个常用的自定义映射,你可以自由更改或添加自定义映射。示例:代码片段内容value of 'AUTHOR' is: 林晓lx与自定义映射一样,当默认映射值未设置或者不可用时,将直接显示变量占位符。原创 2024-08-22 23:14:16 · 856 阅读 · 0 评论 -
[学习笔记]在不同项目中切换Node.js版本
在开发中,可能会遇到不同的Vue项目需要不同的Node.js,在开发机上如何快速切换Node的版本呢?总结:最好是通过第一种方式,因为手动配置环境变量的方式会产生依赖,需要在同事的电脑上手动配置。cross-env 是一个用于在不同操作系统上设置和使用环境变量的工具,可以用它来切换。环境变量,以确保在不同的操作系统上都能正确设置和使用 Node.js 的路径。下载 Node.js,并在不同目录下安装多个版本。环境变量的路径,实现切换Node.js 的版本。可以在系统的环境变量配置中手动设置。原创 2024-08-21 23:17:41 · 802 阅读 · 0 评论 -
[VS Code扩展]写一个代码片段管理插件(二):功能实现
映射是插入代码片段时,自动替换的变量,他们通过Key-Value形式存储于globalState中。代码片段中通过设置占位符(如${AUTHOR}),在插入代码片段时,将自动替换为全局变量中的值。当自定义映射值未设置或者不可用时,将直接显示变量占位符扩展初始化时,插入了三个常用的自定义映射,你可以自由更改或添加自定义映射。${AUTHOR}: 作者姓名${COMPANY}: 公司名称${MAIL}: 邮箱地址扩展中所有的自定义映射,呈现于“映射表”树视图中。示例:代码片段内容。原创 2024-08-21 12:39:10 · 1125 阅读 · 0 评论 -
[VS Code扩展]写一个代码片段管理插件(一):介绍与界面搭建
功能,但是创建自定义代码片段时,需要写JSON格式的配置,这些JSON文件在用户文件夹下,没有统一的界面管理,而且对于我来说,制表符补全这样的高级功能并不是必需的。VS Code扩展是一个基础功能,通过扩展可以满足软件的所有功能增强,包括内置的核心功能,如文件管理,搜索,Git,调试器,这些都是通过扩展实现的。VS Code这些框架的部分,官方称之为“容器”,整个VS Code由6个容器组成,分别是:活动栏,主边栏,编辑器,辅边栏,面板,状态栏。常用的项目有侧边栏,编辑器,状态栏,面板上的工具栏区域。原创 2024-08-02 23:13:21 · 785 阅读 · 0 评论 -
开源好用的所见即所得(WYSIWYG)编辑器:Editor.js
varaiables.css中包含了大部分的样式变量,更改这些变量可以实现自定义样式。如通过重写 .root样式选择器可以实现自定义的背景色, 重写.ce-popover 改变弹出框样式等。:root {– 完 –原创 2024-03-11 18:37:05 · 1923 阅读 · 0 评论 -
[学习笔记]TypeScript查缺补漏(二):类型与控制流分析
/ 验证是否是number类型// 验证是否是string类型。原创 2023-11-01 18:50:21 · 351 阅读 · 0 评论 -
[学习笔记]TypeScript查缺补漏(一):类
private在编译后JavaScript中没有影响,仅对TypeScript编译器有影响,而使用#符号声明的私有属性在JavaScript中会被编译为常规的私有属性。Getter/Setter可以在不改变属性的访问权限的情况下,对属性的值进行更精细的控制。装饰器是使用 @ 符号来标识的特殊类型的函数,可以用来扩展类或方法的行为。尽管箭头函数是在对象的方法中定义的,但是它不会捕获到调用该方法的对象作为自己的this上下文。在箭头函数中,this不指向调用该函数的对象,而是指向定义该箭头函数时的上下文。原创 2023-10-31 21:31:02 · 325 阅读 · 0 评论 -
Vue + Volo.Abp 实现OAuth2.0客户端授权模式认证
只需要清除vuex或Cookies中的token即可,可以调用vue-oidc-client的signOut,但只是跳转到配置的登出地址,不会清除token(前提是redirectAfterSignout为true,并设置了post_logout_redirect_uri)创建continue/index.vue,简单的显示登录成功的提示,常用的提示有“登录成功,正在为您继续”,“登录成功,正在为您跳转”等友好提示。(D)客户端收到授权码,附上早先的"重定向URI",向认证服务器申请令牌。原创 2023-07-07 11:30:14 · 1905 阅读 · 0 评论 -
用Abp实现两步验证(Two-Factor Authentication,2FA)登录(二):Vue网页端开发
前端代码的框架采用vue.js + elementUI 这套较为简单的方式实现,以及typescript语法更方便阅读。首先添加全局对象:loginForm: 登录表单对象twoFactorData: 两步验证数据,showTwoFactorSuccess: 是否显示两步验证成功提示。原创 2023-04-12 11:17:24 · 4202 阅读 · 0 评论 -
用Abp实现短信验证码免密登录(三):Vue网页端开发
前端代码的框架采用vue.js + elementUI 这套较为简单的方式实现,以及typescript语法更方便阅读。首先来编写发送验证码函数。注意几个关键的全局变量。原创 2022-10-28 18:39:55 · 574 阅读 · 0 评论 -
使用 Abp.Zero 搭建第三方登录模块(四):微信小程序开发
微信小程序主要为用户授权行为提供交互功能,用户在扫码之后,提供一个交互UI,如下在中介绍了服务端已经搭建的接口,这次我们将调用Access和Authenticate,分别调用来完成已扫码和已授权状态的更新。......原创 2022-07-19 16:59:25 · 597 阅读 · 0 评论 -
使用 Abp.Zero 搭建第三方登录模块(三):网页端开发
在此之前我们需写一个参数传递对象,为了保留一定的扩展能力,data中我们定义loginExternalForms,已经实现的微信小程序登录,则对应的authProvider值为“WeChatAuthProvider”,providerAccessCode则为生成的Token值。上一章,我们介绍了服务端的开发,这次我们需要调用GetACode,GetToken,分别获取小程序码,和获取当前状态。afterLoginSuccess函数用于登录成功后的逻辑,停止计时器,并跳转页面,本实例仅做弹窗提示。......原创 2022-07-19 15:02:41 · 547 阅读 · 0 评论 -
[Vue]写一个简单的文件上传控件
这篇将介绍如何写一个简单的基于Vue+Element的文件上传控件。控件将具有1. 上传队列的列表,显示文件名称,大小等信息,可以显示上传进度实时刷新2. 取消上传使用Element的uploader控件,上传文件的行为和样式不用自己全部实现,使代码简化。且有足够的扩展性,文件传输请求的代码可以基于axios完全自己重写。我们只用关心核心代码。搭建项目框架首先建立一个空白的项目,引入Element控件库,具体的操作和使用Element控件库请看官方文档:组件 | ..原创 2022-04-13 17:00:56 · 1559 阅读 · 0 评论 -
用Vue编写一个简单的仿Explorer文件管理器
大家一定很熟悉你桌面左上角那个小电脑吧,学名Windows资源管理器,几乎所有的工作都从这里开始,文件云端化是一种趋势。怎样用浏览器实现一个Web版本的Windows资源管理器呢?今天来用Vue好好盘一盘它。一、导航原理首先操作和仔细观察导航栏,我们有几个操作途径:点击“向上”按钮回到上一个目录,点击地址栏的文件夹名称返回任意一个目录 双击文件夹进入新目录 点击“前进”,“后退”按钮操作导航其中前进,后退操作,可以点击小三角查看一个列表,点击进入文件夹,列表会记录导航历史,哪怕反复进入同一原创 2022-03-11 22:48:02 · 6298 阅读 · 1 评论 -
Typescript 中如何像C#一样用对象初始化器实现类的实例化
假设我有一个不含带参构造函数的类Class1,希望在某个地方实例化这个类,众所周知没有办法直接在new Class1()后面带参数来初始化这个类的.当然我们可以直接构建js对象的方式来初始化c1,但如果只想要其中一部分成员变量赋值,typescript语法编译器会报告一个错误为什么用new的方式不会报错呢?我们先来看下new的时候解析器都做了什么操作:创建一个空的简单JavaScript对象(即{}); 为步骤1新创建的对象添加属性__proto__,将该属性链接...原创 2021-10-27 18:55:30 · 640 阅读 · 0 评论