跳到主要内容

分类: 学习笔记

共 66 篇文章

独立站营销的核心策略

独立站营销实战指南 本文总结了独立站营销的核心策略,从品牌建设到SEO优化,从社交媒体到付费广告,为独立开发者提供全面的营销参考。重点介绍了Marc Lou的快速迭代理念、PSEO技术、Google SEO优化等实用技巧。

erc6551

ERC6551 为nft绑定一个账户,然后可以发送相关资产到这个账户,只有这个nft的拥有者才可以操作这个账户 EIP 以太坊潜在新功能或流程提出建议的标准 EIP1559gas销毁 EIP1014CREATE2指令

4337

智能合约钱包(4337) UserOperations 用户操作对象,是用于与合约账户执行交易的伪交易对象。这些是由创建者的应用程序所创建的。 Bundlers 捆绑器,可能是某个矿工,从内存池中打包 UserOperations 并将它们发送到区块链上的 EntryPoint 合约的参与者。 EntryPoint 入口点合约,是处理交易验证和执行逻辑的智能合约。 Wallet Contracts 是用户最终拥有的链上身份,属于智能合约帐户。 Paymaster Contracts 是可选的代付智能合约。

跨链桥

ccip视频 介绍https://www.youtube.com/watch?v=uAdjzTtDOnQ 跨链桥产品 mesonhttps://meson.fi/ stargate.financehttps://stargate.finance/transfer opBnb 跨链桥https://opbnbbridge.bnbchain.org/deposit

入门

知识文档 JSONRPChttps://ethereum.org/zh/developers/docs/apis/jsonrpc data解码https://docs.soliditylang.org/en/latest/abispec.html erc4337文档https://eips.ethereum.org/EIPS/eip4337 开发库 viem 1.xhttps://v1.viem...

常见问题

常见问题 无法估算燃料https://github.com/ethereum/solidity/issues/13159 无法估算燃料排查https://blog.csdn.net/gambool/article/details/128642004 无法估算燃料解决https://stackoverflow.com/questions/70622074/setgaslimitoncontra...

OpenGraph

1.Open Graph OG(Open Graph)协议是一种用于网页和社交媒体分享的元数据标记协议,最初由Facebook开发。它允许网站管理员指定在社交媒体上分享链接时显示的标题、描述、图片等内容,以确保分享链接的信息在各种社交媒体平台上都能被正确地显示和优化。

web3钱包类型

钱包类型 EOA Externally Owned Account 帐号: 中文名叫:外部账户 EOA 帐号是由私钥控制的,通常由个人创建和拥有。 生产规则:私钥 》 keccak256哈希 》 最后20Bytes 》十六进制字符串EOA地址 节点验证交易是否被地址owner授权的时候也是固定的规则:交易签名 》 ec_recover 》公钥 》Eoa钱包地址 》 对比要操作的地址 对...

入门

useEffect return useEffect 中的 return 语句中的函数会在组件卸载(销毁)时执行,用于清理副作用或取消订阅。这是 useEffect 的一个重要特性,用于确保在组件不再使用时清理资源,以防止内存泄漏和其他问题。 js import React, { useEffect } from 'react'; function MyComponent { useEf...

solidity笔记二

函数 可见性修饰符必填 public: 任何地址都可以调用,包括外部地址。 internal: 只有合约内部和继承合约可以调用。 external: 只有外部地址可以调用(不能在合约内部调用)。 private: 仅合约内部可以调用。 状态修改性 pure: 函数不读取或修改合约的状态,不接受 ether。 view: 函数不修改合约的状态,但可以读...

foundry框架

Foundry 官方文档https://book.getfoundry.sh/ 中文文档https://learnblockchain.cn/docs/foundry/i18n/zh/index.html

装饰器

场景 数据上报 请求公共参数 localstorage设置过期时间 路由守卫 函数装饰器 用一个函数包装另一个函数,来扩展功能而不改变原始函数 js function readonlytarget, name, descriptor { descriptor.writable = false; return descriptor; } class Point { cons...

创建型-单例模式

场景 在一个系统中可能只有一个数据库连接、一个网络连接或一个唯一的配置文件。在这些情况下,使用单例模式可以确保系统中只有一个实例,从而避免问题的发生。单例模式还可以用于对象缓存、日志系统和对象池等。需要注意的是,使用单例模式并不是解决所有问题的万能药,过度使用单例模式可能会导致软件设计的不灵活,并且难以测试和维护。因此,在使用单例模式时要谨慎考虑。 实现 使用单例模式对localStorage ...

创建型-工厂模式

简单工厂模式 场景 做一个信息录入系统,分别字段有【名字,年龄,职业,工作内容】, 工作内容需要根据不同的职业不同而改变 代码 js function Username , age, career, work { this.name = name this.age = age this.career = career this.work = work } ...

前言

场景是基础,代码是辅助,逻辑是主角。 设计模式的核心操作是去观察你整个逻辑里面的变与不变,然后将变与不变分离,达到使变化的部分灵活、不变的地方稳定的目的。 主流的23种设计模式划分 创建型 单例模式 原型模式 构造器模式 工厂模式 抽象工厂模式 结构型 桥接模式 外观模式 组合模式 装饰器模式 适配器模式 代理模式 享元...

Canvas

什么是canvas 在 MDN 中是这样定义 <canvas\ 的: <canvas\ 是 HTML5 新增的元素,可用于通过使用 JavaScript 中的脚本来绘制图形。例如,它可以用于绘制图形、制作照片、创建动画,甚至可以进行实时视频处理或渲染。

vue

基础 options vue object——new Vue{} el: dom元素对象 "DomObj" document.querySelector'DomObj' //更为优化,避免了vue判断查询 data:数据 data:{key:"数据"} //可选 data:function{return{key:"数据"}} //可选 method...

ES6

let & const let 只能声明一次,有块级作用域,变量可以改 const 只能声明一次,有块级作用域,常量不可以改 箭头函数 如果只有一个参数——————可以省 如果只有一行return————{}可以省 this指向window 参数扩展 收集剩余参数(Rest parameter) function xa,b,...args{conaole.loga,b,...

Angularjs

概念 module 相当于容器 directive 指令负责对html元素进行绑定,同时进行相互作用 service 公有代码逻辑 controller 私有代码逻辑 filter 过滤器 指令directivehttp://www.runoob.com/angularjs/angularjsreference.html ngapp 标记angularjs的作用域 ngmodel...

虚拟DOM

虚拟DOM 主要用处 虚拟DOM主要用于映射真实DOM上,用于减少重复的大量的DOM渲染。将原来频繁的dom操作合并起来。 原理 通过javascript对象表示出一个虚拟DOM用来映射真实DOM,视图的结构确实是整个全新渲染了,但是最后操作DOM的时候确实只变更有不同的地方。 Virtual DOM 算法 1 用 JavaScript 对象结构表示 DOM 树的结构;然后用这个树构建一...

自定义组件

Web components Web Components是一套不同的技术,允许您创建可重用的定制元素 Custom elements Custom elements(自定义元素):一组JavaScript API,允许您定义custom elements及其行为,然后可以在您的用户界面中按照需要使用它们。 HTML templates(HTML模板):<template 和 <slot 元素...

WEB_API

Elementhttps://developer.mozilla.org/zhCN/docs/Web/API/Element是非常通用的基类,所有 Document对象下的对象都继承它. 这个接口描述了所有相同种类的元素所普遍具有的方法和属性。 Element.getBoundingClientRect 方法返回元素的大小及其相对于视口的位置。

浏览器兼容问题

浏览器兼容 by 若愚@饥人谷 什么是浏览器兼容问题 同一份代码,有的浏览器效果正常,有的不正常 不正常的原因是什么?不支持? bug? 如何让它展示正常?条件注释? 单独Hack? 为什么会有浏览器兼容问题 同一产品,版本越老 bug 越多 同一产品,版本越新,功能越多 不同产品,不同标准,不同实现方式 用到的网站 浏览器市场份额http://tongji.ba...

Node服务

学习nodejs专用 一、commonjs 导出/导入 javascript //a.js function adda,b{ return a+b } module.exports=add //b.js const add= require'./a' const sun =add10,23 console.logsun 创建基础服务 javascript const http =require...

newServer

下载tmux bash sudo aptget install tmux 使用 bash 进入tmux $ tmux 唤起快捷键 $ ctrl + b Ctrl+b d:分离当前会话。挂起并退出 Ctrl+b s:列出所有会话。 Ctrl+b $:重命名当前会话。 https://www.ruanyifeng.com/blog/2019/10/tmux.html

JavaScript类型

Undefined 类型表示未定义,它的类型只有一个值,就是 undefined。任何变量在赋值前是 Undefined 类型、值为 undefined, undefined 是一个变量,而并非是一个关键字,这是 JavaScript 语言公认的设计失误之一 在2009年ECMAScript 5https://es5.github.io/x15.1.1.3修复了全局undefined不可修改。但...

打包工具

webpack3https://segmentfault.com/a/1190000006178770articleHeader2 打包构建:npm脚本(package.json的script)可以直接设置./node_modules/.bin/webpack 快速启动webpack,或者使用npx webpack代替。 webpack.config.js配置 javascript const...

iview踩坑记

定制主题 按官网推荐的定制主题(变量覆盖),less版本需要在3以下"less": "^2.7.3", "lessloader": "^4.1.0" 可能造成的原因:webpack4要求less要升级,不能在2.x~

书籍

javascript 锋利的jQuery javascript高级程序设计(红宝书简称高程) javascript语音精髓(蝴蝶书) 你所不知道的javascript 上卷:介绍“作用域和闭包”以及“this和对象原型” 中卷:介绍了“类型和语法”以及“异步和性能” 下卷:介绍了js入门知识和对es6及未来发展趋势 超实用javascript代码段 编写...

typescript

安装 npm install typescript@2.9.2 g ————安装ts npm install tsnode@7.0.0 g ————让nodejs支持ts 类型 参数类型 在参数名称后面后面使用冒号来指定参数的类型 默认参数 在参数声明后面用等号来指定参数的默认值 可选参数 在方法的参数声明后面用问号来标明此参数为可选参数 ...

git笔记

本文整理了Git版本控制系统的常用命令、配置方法和最佳实践。包含了从基础操作到分支管理的完整指南,以及常见问题的解决方案。

ng题目

1. 以下哪个是以3000端口打开服务的命令?(A) A,ng serve port 3000 B,ng serve port=‘3000’ C,ng serve port =3000 D,ng serve port 3000 2. 想要使用ngModel进行双向绑定,必须在你的@NgModule里面定义(C)模块。 A,import FormsModule B,impo...

DOM和事件

document对象有很多属性来描述文档信息 document.doctype document.title document.characterSet document.head document.body document.images document.readyState属性返回当前文档的状态,共有三种可能的值 loading:加载H...

Nodejs基础

Nodehttp://www.imooc.com/learn/348 简介 Node诞生于2009年,是基于 Google V8 引擎的 JavaScript 运行时环境,具有 I/O、文件读写、操作数据库服务器端等能力,具有事件驱动,非阻塞 I/O 模型等特性,主要作用为前端的开发工具与网站后端。Node.js 内置了开源包管理器npm。 npmhttps://juejin.i...

前端资源

其他 js练习http://www.fgm.cc/learn/ codewarshttps://www.codewars.com/?language=javascript 编程语言练习 leancloudhttps://leancloud.cn/ 后端云服务 codepenhttps://codepen.io/ 用CSS来画画 codropshttps://tympanus.net/co...

JavaScript

阮一峰javascripthttp://javascript.ruanyifeng.com// MDNjavascripthttps://developer.mozilla.org/zhCN/docs/Web/JavaScript 语法 表达式(expression) 指一个为了得到返回值的计算式,一定会返回一个值。凡是 JavaScript 语言中预期为值的地方,都可以使用表达式。比如...

sass

sass sass支持两种语法 Sass,一种缩进语法 SCSS,一种 CSSlike 语法 scss 变量用$表示如$bordercolor:pink;, 嵌套选择器 支持@mixin,@include @mixin box { border: 1px solid $bodercolor; height: 10px; margin: 10px } .box{ ...

实用代码段

48个ES6常用代码段https://www.baronzsn.info/2018/03/08/article6/ javascript 如何防止别人在你的网页打开控制台? javascript setInterval=debugger 函数防抖 防抖动是将多次执行变为最后一次执行 javascript var timer function hiFrequency{ if...

Node爬虫

爬虫模块 nodecrawler 爬虫框架 jsdom(node版本的jQuery)类库 superagent 是用来发起请求的,是一个轻量的,渐进式的ajax superagentcharset防止爬取下来的数据乱码,更改字符格式 cheerio为服务器特别定制的,快速、灵活、实施的jQuery核心实现.。 request 常用...

HTML5_CSS3

HTML form标签 shell 用于包裹所有需要发送和请求的表单,主要的两个属性 1、action=“/abc” 数据提交到当前域名的abc后台的路径上 2、method=“” 有两个类型一个是get和post input 表单输入校验https://developer.mozilla.org/zhCN/docs/Learn/HTML/Forms/Data_form_validatio...

js深入浅出

函数 当写一个函数的时候先知道输入在知道输出,然后再写里面的逻辑。 返回对象的函数叫构造函数 fn.callthis,arguments call的第一个参数是this,其他参数统称为 arguments 当你不确定参数的个数时,就使用 apply 柯里化函数:函数里面return一个函数里面再return一个函数或值 高阶函数:在数学和计算机科学中,高阶函数是至少满...

webpack原理跟配置

AST parse:把代码code编程AST traverse:遍历AST进行修改(使用babel) generate:把AST变成代码code2 loader webpack自带的打包器只支持js文件,当我们想加载css,less,scss,ts,md文件时,就需要用到loader 原理就是吧文件包装成能运行的js,比如:加载css需要用到styleloader和cssload...

Promise

Promise 简介 MDN长解释: 一个 Promise 对象代表一个在这个 promise 被创建出来时不一定已知值的代理。它让你能够把异步操作最终的成功返回值或者失败原因和相应的处理程序关联起来。这样使得异步方法可以像同步方法那样返回值:异步方法并不会立即返回最终的值,而是会返回一个 promise,以便在未来某个时候把值交给使用者。 短解释 Promise 是一个对象,它代...

JS概念

JavaScript 的33个概念https://github.com/stephentian/33jsconcepts%E7%9B%AE%E5%BD%95 变量提升(hoisting) javascript console.lognum //undefined var num=123 总结:变量提升只存在var变量声明中,这个是var其中一个副作用,所以在es6出现时推介使用代替另外var另...

ajax

ajaxhttps://segmentfault.com/a/1190000004322487articleHeader2 线上mock数据平台http://easymock.com/ ajax事件函数 xhr.onreadystatechange 状态发生变化触发 xhr.onload 加载完成后触发 取response数据 xhr.response ...

ssh远程登录

免密登录 查看本地或远程sshcd ~/.ssh 注意:远程主机将用户的公钥,保存在登录后的用户主目录的$HOME/.ssh/authorized_keys文件中 生成公钥sshkeygen 将公钥传送到远程主机host上面sshcopyid user@remote p port 注意:如果不需要端口则省略 p port 配置别名 bash 打开编辑器 code ...

termux

报错 sudo aptget install buildessential —— Ubuntu/linux中编译c/c++程序,只需要安装该软件包就可以了。 安装Ubuntu 或 Debian $ sudo aptget install tmux 唤起快捷键 ctrl+b w 查看窗口 d 挂起 (或者输入tmux detach) $ 重命名会话 关闭...

this的指向

普通函数 调用函数时使用的引用,决定了函数执行时刻的 this 值。 js class C { showThis { console.logthis; }} var o = new C;var showThis = o.showThis; showThis;// undefined o.showThis; // o 按照我们上面的方法,不难验证出:生成器函数、异步生成器函数和异步普通函数跟普通...

zIndex的7个权限

zindex 的 7 个权限元素层叠上下文中的七种层叠等级 1. 背景和边框 —— 形成层叠上下文的元素的背景和边框。 层叠上下文中的最低等级。 2. 负 zindex 值 —— 层叠上下文内有着负 zindex 值的子元素。 3. 块级盒 —— 文档流中非行内非定位子元素。 4. 浮动盒 —— 非定位浮动元素。 5. 行内盒 —— 文档流中行内级别非定位子元素。 6. zindex: 0 ——...

开发环境

全局环境下常用的npm包 shell npm install g fanyi httpserver nrm npm install g @vue/cli npm install g expressgenerator npm install g tsnode typescript npm install g browsersync 使用:browsersync start server ...

数组操作

forEach map遍历 map 方法创建一个新数组,这个新数组由原数组中的每个元素都调用一次提供的函数后的返回值组成。 js var arr=1,2,3 var newArr=arr.mapval=val+1 console.lognewArr//2,3,4 filter过滤 reduce 总结 forEach、map、for区别 forEach没法break map有返回...

前端单元测试

能直接看到结果的大多都不做单元测试 BDDBehaviordriven development 行为驱动开发 TDDTestdriven development 测试驱动开发 常用的前端测试库 chai.js :BDD / TDD断言库 Karma是一个测试运行器,它可以呼起浏览器,加载测试脚本,然后运行测试用例 Mocha是一个单元测试框架/库,它可以用来写测试用例 Sinon(西农)...

造轮子思路

原则 (对内)分层原则:正交原则 html 结构层分离 css 样式层分离 js 行为层分离 例如:使用$div.addClass,不使用$div.show (对外)封装原则:面向接口原则 用户如何调用? 先想好输入,输出,在写中间逻辑 能不用接口最好不用接口 步骤 需求,UI,代码,测试 思路 如果需要渲染不知道长度的东西,可以考虑递归。 VUE...

js设计模式

js设计模式 设计思路 业务逻辑与界面逻辑分开,让他们的耦合性下降。 需求增加,不修改产品源代码 工厂模式 应用场景 jQuery —————— $'div' React.createElement vue 异步组件 单列模式 特性 一个类只能初始化一个实例 ...

JavaScript对象

JavaScript 标准对基于对象的定义 语言和宿主的基础设施由对象来提供,并且 JavaScript 程序即是一系列互相通讯的对象集合。 对象的特征 对象具有唯一标识性:即使完全相同的两个对象,也并非同一个对象。 对象有状态:对象具有状态,同一对象可能处于不同状态之下。 对象具有行为:即对象的状态,可能因为它的行为产生变迁。 为了提高抽象能力,JavaScript 的属性被设计成比别...

flex布局

flex 布局 概念 main axis————主轴 main size————主尺寸 main start————主轴起点 main end————主轴终点 cross axis————侧抽 cross size————侧抽尺寸 cross start————侧抽起点 cross end————侧抽终点 flex item ————flex里面的一个项,所有flex里的子...

造轮子思路二

VUE轮子 tabs组件 tabs组件核心在于组件之间的通讯,我使用的是eventBus来做组件通讯 bus定义到全局在eventBus中,bus本身就是vue对象本身 然后在组件中,可以使用 $emit, $on, $off 分别来分发、监听、取消监听事件 popover组件 popover组件常见的写法是气泡框用vshow来隐藏在按钮附近,我参考了其他热门的组件库使用了vif来...

svg

注意事项 SVG的元素和属性必须按标准格式书写,因为XML是区分大小写的,属性值必须用引号引起来,就算是数值也必须这样做。 属性 viewBox 对内部局部放大缩小 x 横轴,y 纵轴 width 宽度 height 高度 fill 内部填充色 strokewidth='5' 边框宽度 标签 rect 矩形 rx ,ry 圆角属性

关于前端接口管理的一些思考

前言 在前端项目中,ajax请求太多,能不能都用一个文件夹去统一管理呢,然后吧接口当成函数一样调用呢,这样做的好处有 一个地方统一管理所有接口 避免多次重复写一样的接口 可配置请求方式,减少代码量 实现的思路 首先约定后端返回的数据模板格式 然后按每种不同的请求格式去封装不同的函数 将接口管理写在一个数组里面,遍历所有数组生成对应的函数并且挂在在vue.prototype的方法...

JavaScript的执行

JavaScript 的执行 首先一个 js 脚本本身对于浏览器而言就是一个宏任务,也是第一个宏任务,而处于其中的代码可能有 3 种:非异步代码、产生微任务的异步代码(promise 等)、产生宏任务的异步代码settimeout、setinterval 等。 我们知道宏任务处于一个队列中,应当先执行完一个宏任务才会执行下一个宏任务,所以在 js 脚本中,会先执行非异步代码,再执行微任务代码,最...

Angular6

概念 组件:是angular应用的基本构建快,你可以把组件理解为一段带有业务逻辑和数据的HTML 模块:模块用来将应用中不同的部分组织成一个Angular框架可以理解的单元 路由: 命令 ng new appName ————生存新项目 注意:生成项目同时会下载npm依赖,如果失败需要换代理《nrm》 ng serve open ————启动服务器并监听文件变化,...

编程概念

为何使用面向对象 答:因为程序执行无非是:“顺序,判断,循环”,而面向对象是基于这三个作数据结构化 编程应该 简单&抽象 返回对象的函数叫构造函数 关于「如何取舍一些技术」: 无论使用的是什么技术,往上走必然会走到一个更高的抽象层面,这个时候所有「变化的表象」就 merge 成了「更不变的基础」: Domainspecific 领域特定 的有一大堆 spec 规范 TC39 的 E...