自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(32)
  • 问答 (1)
  • 收藏
  • 关注

原创 在shopify liquid代码中记录点击列表展示相对应的点击项

通过liquid for循环出对应的内容,默认全部隐藏,为最外层的元素添加id为循环项的唯一标识,为按钮添加自定义属性data-id同最外层元素的id值,当点击按钮的时候取出自定义属性id,通过这个id找到对应的标签,添加其class比如open来展示所对应的内容。

2024-01-18 11:57:31 424

原创 node.js mongoose index(索引)

在 Mongoose 中,索引(Index)是一种用于提高查询性能的数据结构,它可以加速对数据库中文档的检索操作。

2023-12-21 14:26:33 1219

原创 node.js mongoose schemaTypes

SchemaTypes定义MongoDB文档模型中字段的数据类型。在Mongoose中,每个字段都有一个关联的SchemaType,它定义了该字段的数据类型、验证规则等信息。

2023-12-20 15:37:08 1884

原创 node.js mongoose middleware

mongoose中间件是一种允许在执行数据库操作前(pre)或后(post)执行自定义逻辑的机制

2023-12-19 17:48:55 1269

原创 node.js mongoose aggregate

在 Mongoose 中,Aggregate 是用于执行 MongoDB 聚合操作的类。MongoDB 聚合操作是一种强大的数据处理工具,可以用于对集合中的文档进行变换和计算。aggregate链式操作,因为Aggregate的原型方法返回的是this(aggregate实例自身)控制台打印aggregate查看所积累的pipeline操作。也可通过async await的方式获得查询结果。对aggregate对象进行操作。或者通过传入pipeline参数。

2023-12-18 09:31:06 772

原创 node.js mongoose

Mongoose是用于Node.js环境下MongoDB对象建模的工具。通过定义Schema,开发者可以规定MongoDB集合中document的字段、类型和验证规则。通过Model,实现与数据库的交互,进行数据操作,例如查询、插入、更新、删除等。查询返回的是Query实例,可链式调用。Document是Model的实例,代表MongoDB中的文档,通过它进行数据操作

2023-12-16 16:12:57 1244

原创 Next.js ts redux/toolkit状态管理

reduxjs/toolkit是Redux 官方提供的一个工具集,旨在简化和改善 Redux 应用的开发体验。它包含一些工具函数和约定,可以帮助你更快、更轻松地构建和维护 Redux 应用。

2023-12-13 14:32:40 1573

原创 node.js express mongoose用户建模、权限校验

基于Express和mongoose构建用户认证系统,使用Mongoose定义用户模型。通过中间件进行身份验证和权限控制,使用JWT实现用户认证,同时借助next传递控制权。利用中间件进行错误处理和统一错误捕获。

2023-12-12 15:55:30 568

原创 node.js express cors解决跨域

在express框架中使用cors中间件,可解决前端项目在浏览器中发起的跨域请求问题。配置corsOptions参数可以更细致地控制跨域请求的行为。

2023-12-11 17:34:02 1975

原创 node.js express JWT token生成与校验

JWT 是轻量级的数据交换格式,相对于传统的 Session 机制,JWT 不需要在服务器端存储会话信息,而是将所有必要的信息包含在令牌本身中。之后用户每次请求资源的时候将访问令牌token放在请求头中,服务端在验证其是否有效之后,返回相对应的资源信息。通常包括生成jwt的非隐私信息,用户的唯一标识符id,发行时间iat,到期时间exp。2、在代码controller层引入依赖,在登录、注册的时候生成token。生成token的头信息,通常由两部分组成,包含。通过HMACSHA256加密算法生成的签名。

2023-12-11 11:54:40 1427

原创 JS原生实现浏览器滚动条滚动侧边栏高亮响应

实现一个左侧侧边栏与右侧内容的联动效果。当点击左侧链接时,页面滚动到对应内容处;手动滚动页面时,左侧链接高亮显示当前在视口中的内容。使用节流函数来减少滚动事件的频率,提高性能

2023-12-08 17:59:50 871 1

原创 Shopify二次开发之五:元字段(Metafields)

Shopify Metafields 是一种用于存储和管理自定义数据的功能。它们允许商户在商城中的产品、订单、客户、Page等对象上添加自定义字段,以满足特定业务需求。

2023-12-06 17:53:18 1229 1

原创 Shopify二次开发:代码执行流程

liquid代码执行流程,服务端渲染liquid代码,生成html发送给客户端,客户端解析html

2023-12-06 09:51:24 743 2

原创 JS this指向详解

JavaScript中的this关键字在代码执行过程中动态绑定。全局上下文中this指向全局对象,在函数调用中this指向调用者对象,函数中的this可通过call、apply、bind指定特定的对象,箭头函数中的this由外部上下文决定,在定义时确定,不可更改this指向。

2023-12-04 13:58:23 859

原创 JS不同运算符下的隐式类型转换

深度解析JavaScript的动态和弱类型特性,阐述逻辑、算术、关系运算符的隐式类型转换规则

2023-12-01 16:27:19 997 1

原创 JS for...of iterator(迭代器),for...in可枚举,不可枚举属性,对象属性遍历

介绍JavaScript中的三个关键概念:迭代器、可枚举属性和对象描述属性,迭代器是一种访问集合元素的方法,通过Symbol.iterator属性定义了一个迭代器生成函数,提供next方法来按顺序获取集合中的元素,可通过for...of遍历迭代器。通过Object.getOwnPropertyDescriptor方法获取的包含属性特性信息的对象,描述属性值、是否可写、是否可枚举和是否可配置等信息,通过Object.defineProperty方法,可以将属性设置为不可枚举。可枚举属性可以通过for...in

2023-12-01 13:14:23 1078 1

原创 JS数据类型、数据类型判断

如果要判断基本数据类型可以用typeof、如果判断复杂数据类型可以用instanceof。

2023-12-01 11:00:22 392 1

原创 node.js express路由和中间件

Express 路由用于定义应用程序中的不同端点(endpoints)。每个端点对应于一个特定的 URL 路径,并关联着处理该路径请求的处理器函数。通过定义路由,你可以组织应用程序的不同功能和页面,使其更具结构。中间件是在请求到达路由处理器之前执行的函数。它可以修改请求对象、响应对象,或者终止请求-响应周期。中间件的存在使得可以在处理请求之前执行一些通用逻辑,例如身份验证、日志记录等。

2023-11-30 17:49:46 1547 2

原创 Shopify二次开发之四:完成第一个section

简单的开发第一个shopify liquid section, 通过之前学习到的schema配置、liquid语法学习,模板渲染对象。

2023-11-30 10:02:53 1335 1

原创 前端请求patch接口,只传入已修改字段值的字段

在实际开发中前端肯定会遇到一个更新需求,回显数据 => 修改数据 => 请求更新接口这个步骤。通常建议前端仅传递发生更改的字段,而不是将所有字段都传递给后端。

2023-11-29 16:56:08 1054 1

原创 Shopify二次开发之三:liquid语法学习(访问Objects和Schema数据模型)

在 Shopify 主题开发中,使用 Liquid 模板语言访问数据和配置,并根据这些数据渲染页面。包括全局对象、页面模板对象、模板对象、以及在配置文件中定义的模型对象:

2023-11-28 17:04:28 1438

原创 Shopify二次开发之三:liquid语法学习(Filters)

在 Shopify 中,过滤器(Filter)是 Liquid 模板语言的一个重要特性,它为开发者提供了对数据进行处理、转换和格式化的强大工具。过滤器通常应用于 Liquid 变量,以便灵活地修改变量的输出形式。Shopify 的过滤器涵盖了多个领域,包括对字符串、数学运算、购物车数据、媒体处理、货币格式化、数组操作等方面的处理。

2023-11-28 13:32:31 1299

原创 Shopify二次开发之三:liquid语法学习(Tags)

shopify liquid语法学习,包括数据类型、变量声明、条件判断、遍历、{{ }}、{% %}。

2023-11-28 11:07:07 1439

原创 Shopify二次开发之二:配置schema

阐述通常来说,Shopify开发是的,可以通过section中的文件配置,但也不乏特定场景,需要ajax进行接口请求。当进行Shopify二次开发时,模板访问模型数据是至关重要的一步。在Shopify中,由schema定义数据模型以及其他,模型则包含实际的数据(可以在admin后台去配置数据)由模板去进行访问,这就是为什么不需要后端的原因,因为数据完全来自于商城后台。至于如何在scheme中配置可以通过查阅shopify theme官方文档进行学习。

2023-11-27 14:40:04 2147 1

原创 使用nvm版本管理工具快速切换node版本

文章简介:"NVM"(Node Version Manager)是一个用于管理 Node.js 版本的工具,它允许你在不同项目中使用不同的 Node.js 版本,确保项目可以在所需的特定版本下正确运行。本文介绍了在 Windows 环境下安装 NVM 的两种方法:一种是通过安装器进行一步到位的安装,另一种是手动配置的方式。安装完成后,你可以使用一系列简单的命令来管理你的 Node.js 版本,如查看当前安装的版本、安装新版本、切换版本等。

2023-11-06 15:40:30 178

原创 理解npm依赖管理

有关npm依赖管理和版本控制的基本知识,包括命令、写入方式、依赖解释和版本范围解释。这些知识对于有效地管理项目的依赖关系非常重要,可以保证项目的稳定性和可靠性。

2023-11-06 13:52:32 95

原创 Shopify二次开发之一:项目结构解析

关于shopify的二次开发,项目结构简介介绍,以及需要注意的点。

2023-11-03 20:05:00 1022

原创 TailwindCss的基本使用

tailwind,不使用class命名的便捷写法。

2023-10-17 17:09:23 653

原创 关于useEffect使用的注意点

useEffect的注意点,以及一些技巧

2023-10-17 14:30:53 205

原创 Js es6以前类的创建以及原型链

至此就创建出了一个Foo的实例,这个实例拥有Foo的原型方法,也有了Foo类this.attr的属性,f1和f2的原型指向的是同一个原型对象也就是Foo的prototype,而属性attr又是自身相互独立不互相干扰的。当访问一个对象的属性或方法时,如果该对象本身没有这个属性或方法,JavaScript 会沿着原型链向上查找,直到找到匹配的属性或方法,或者到达原型链的末尾(,上图中不管o1和o2是Object的实例,几乎任何类的原型也是如此,所以我们看到o1、o2的。在js中是这样解释的,

2023-10-16 11:47:10 75

原创 vue diff算法

虚拟dom对比

2023-09-17 19:47:09 51 1

原创 学习react基础

react学习

2023-08-18 18:01:20 168 1

Shopify二次开发之四:完成第一个section

关联的文本、图片

2023-11-30

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除