2024年9月12日
摘要: 目录举个反例分析错误原因举个正例分析solidity 中的多重继承多重继承合约的 storage layout 学习 solidity 合约多重继承时,官方文档介绍 solidity 采用 C3线性化算法 来确定多重依赖中的继承顺序。 维基百科上有很好的说明: C3线性化 C3 linearizat 阅读全文
posted @ 2024-09-12 16:29 HorseShoe2016 阅读(28) 评论(0) 推荐(0) 编辑
  2024年9月11日
摘要: 目录编写合约编译、部署、调用合约调试交易1. 调用函数 bytesInMemory(),分析 bytes 的 Memory Layout执行 RETURN 前的最后一刻,stack 快照如下执行完毕时刻的 Memory Layout对 Memory Layout 的分析2. 调用函数 bytesAr 阅读全文
posted @ 2024-09-11 17:04 HorseShoe2016 阅读(14) 评论(0) 推荐(0) 编辑
  2024年8月12日
摘要: 以太坊合约ABI规范见 官方文档-合约ABI规范 这里通过实验来印证 ABI 编码在 Event log 中的实现。 目录本地启动 ganache创建 hardhat 项目创建合约文件创建安装合约的脚本部署合约创建测试脚本执行测试用例分析 Event LogEvent TransferEvent T 阅读全文
posted @ 2024-08-12 01:37 HorseShoe2016 阅读(59) 评论(0) 推荐(0) 编辑
  2024年7月17日
摘要: 目录先上图各个 ObjectArrayBuffer:Blob:File:FileReader:ReadableStream:Response用法举例ArrayBufferBlob, File, FileReaderReadableStream关于 ReadableStream 的一点总结Respon 阅读全文
posted @ 2024-07-17 17:09 HorseShoe2016 阅读(182) 评论(0) 推荐(0) 编辑
  2024年5月19日
摘要: 目录问题描述网上的讨论最终的解决办法 问题描述 对于如下这样简单的测试文件: package main // Basic imports import ( "testing" "github.com/stretchr/testify/assert" "github.com/stretchr/test 阅读全文
posted @ 2024-05-19 23:46 HorseShoe2016 阅读(54) 评论(0) 推荐(0) 编辑
  2024年4月10日
摘要: vue 的单文件组件,其实最终是编译成了一个 object,然后调用该 object 上的 setup() 函数来渲染页面的; 如下两个页面,一个使用 vue 单文件组件的语法来实现,一个使用纯 js 来实现,二者效果一致 使用 vue 实现组件 src/views/VueImplementedVi 阅读全文
posted @ 2024-04-10 17:34 HorseShoe2016 阅读(34) 评论(0) 推荐(0) 编辑
  2024年4月9日
摘要: 现代浏览器中会包含 indexedDB,这是一个功能比 localStorage 更加强大的数据库引擎,其 API 描述详见 W3规范:IndexedDB 如下是一个简单的应用示例: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF 阅读全文
posted @ 2024-04-09 15:16 HorseShoe2016 阅读(20) 评论(0) 推荐(0) 编辑
摘要: 对于 html 元素的 onEvent,我们想要给其添加 function handler() {},有时候会弄不清楚到底是添加 <div onEvent="handler"> 还是添加 <div onEvent="handler()"> 下面三个等价的 input 标签说明了正确的方法: <!DO 阅读全文
posted @ 2024-04-09 14:39 HorseShoe2016 阅读(25) 评论(0) 推荐(0) 编辑
  2024年3月24日
摘要: vuejs 官方文档参考: definecomponent 渲染函数 API: h() 可以通过向 defineComponent() 传入一个 组合式 API 的 setup function,或者 选项式 API 的 export object,来定义一个组件,并包含各种响应式功能;如下 Hom 阅读全文
posted @ 2024-03-24 19:18 HorseShoe2016 阅读(1361) 评论(0) 推荐(0) 编辑
  2024年3月23日
摘要: 根据 vue3 官方文档 路由,写了如下一个简单的页面来模拟路由的实现。 为了减少 *.vue 文件的个数,在这个但页面中,使用 defineComponent 通过 object 定义组件。 <script setup> import { ref, computed, defineComponen 阅读全文
posted @ 2024-03-23 21:50 HorseShoe2016 阅读(525) 评论(0) 推荐(0) 编辑
  2024年3月4日
摘要: 目录isExtensibleisSealedisFrozen示意图 isExtensible extensible object 的定义: they can have new properties added to them, and their [[Prototype]] can be re-as 阅读全文
posted @ 2024-03-04 14:11 HorseShoe2016 阅读(31) 评论(0) 推荐(0) 编辑
  2024年2月28日
摘要: 在单文件中实现所有逻辑 index.html <div id="app"></div> <script> function h(tag, props, children) { return { tag, props, children, } } function render(vnode) { co 阅读全文
posted @ 2024-02-28 00:30 HorseShoe2016 阅读(7) 评论(0) 推荐(0) 编辑
  2024年2月17日
摘要: 目录参考资料Promises 介绍文档Promises/A+ 规范Promises 的一种实现方式github 上 2.6k+ star 的一个 Promise 实现方式手写 Promise测试运行执行结果 参考资料 Promises 介绍文档 Promises/A+ 规范 Promises 的一种 阅读全文
posted @ 2024-02-17 15:33 HorseShoe2016 阅读(6) 评论(0) 推荐(0) 编辑
  2023年9月23日
摘要: 今天使用 vscode 开发 nuxt3 项目,发现在 vue 文件中,emmet 提示功能不可用。 emmet 提示功能,如下图所示: 百度、google一阵子,发现是个全球性存在的问题,是 vue 插件 volar 导致的 vscode 自带的 emmet 提示功能不可用。 如果在vscode中 阅读全文
posted @ 2023-09-23 21:38 HorseShoe2016 阅读(733) 评论(0) 推荐(0) 编辑
  2023年6月21日
摘要: # 问题描述 CentOS7环境,已安装 Python3.8.10。 最近项目开发,需要切换 solidity 版本,参考开发文档,需要执行如下命令 ```bash pip install solc-select==0.2.0 # 安装指定版本solc solc-select install # 切 阅读全文
posted @ 2023-06-21 17:27 HorseShoe2016 阅读(1314) 评论(0) 推荐(0) 编辑
摘要: # 背景 CentOS7 自带的 Python3,或者通过 yum 安装的 Python3,可能会有无法使用 ssl 的问题: ```bash $ python3 Python 3.8.10 (default, Jun 13 2023, 14:51:15) [GCC 11.2.1 20220127 阅读全文
posted @ 2023-06-21 17:21 HorseShoe2016 阅读(2696) 评论(0) 推荐(0) 编辑
  2022年7月10日
摘要: macos 搭建 protocol buffer 环境 安装 protoc brew install protobuf 为 protoc 安装 go 插件 $ go install github.com/grpc-ecosystem/grpc-gateway/v2/protoc-gen-grpc-g 阅读全文
posted @ 2022-07-10 20:05 HorseShoe2016 阅读(232) 评论(0) 推荐(0) 编辑
  2022年3月27日
摘要: 新购的 macbook,芯片为 Apple M1 Pro。 今天使用 vscode 开发 golang项目,想要使用debug功能进行调试,结果出现如下问题: Failed to launch: could not launch process: can not run under Rosetta, 阅读全文
posted @ 2022-03-27 17:55 HorseShoe2016 阅读(2430) 评论(0) 推荐(0) 编辑
  2022年3月22日
摘要: 近期学习了docker技术,一时心血来潮,想要使用 docker 搭建一个 gitlab. 网上搜索 gitlab docker镜像,找到一个汉化版的 gitlab docker 镜像 GitLab中文社区版 Docker 镜像 按照镜像页面中的说明步骤进行操作,结果发现没有将镜像的 22 号端口进 阅读全文
posted @ 2022-03-22 18:58 HorseShoe2016 阅读(751) 评论(0) 推荐(0) 编辑
  2022年3月16日
摘要: 最近学习 docker 和 k8s; 由于 k8s 部署 Deployment 的时候,从 docker.io 拉取镜像容易超时,于是考虑搭建一个本机的 docker hub。了解到 docker 有一个 registry 镜像,遂学习之: Deploy a registry server 在 ma 阅读全文
posted @ 2022-03-16 17:06 HorseShoe2016 阅读(1406) 评论(0) 推荐(0) 编辑