技术探索
未读
源码见仓库 Breezli/WebRTC_Demo: 基于WebRTC技术实现的本地网页端视频通话
为了更好的项目体验,本文的项目引用了三张svg,位于github仓库的public目录下
分为前后端两个文件夹
webrtc-client (客户端)
webrtc-server (服务端)
预先准备webrtc-client前端页面绘制
123456依赖下载pnpm create vite@latest webrtc-client -- --template vue-tscd webrtc-clientpnpm install -D tailwindcss@3.4.17 postcss autoprefixerpnpm install socket.io-clientnpx tailwindcss init -p
package.json
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616 ...
源码学习
未读
TS + NodeJS 实现 axios1git clone https://github.com/alexjoverm/typescript-library-starter.git ts-axios
需求
在浏览器端使用 XMLHttpRequest 对象通讯
Promise API
请求响应拦截器
请求数据和响应数据转换
请求的取消
JSON 数据的自动转换
客户端防止 XSRF
框架工具
请求代码axios 最基本的操作
12345678axios({ method: 'get', url: '/simple/get', params: { a: 1, b: 2, },})
创建入口文件
index.ts
123function axios(config) {}export default axios
xhr.ts
xhr 函数用于发送 HTTP 请求的工具函数,基于 XMLHttpRequest API 实现,并提供了一个简单的接口来配置和发送请求。
...
源码学习
未读
源码探究 runtime-core 模块
接下来我们将对这行核心代码的源码进行全流程追踪
1createApp(App).mount('#root')
注:在此之前我们已经通过
1const rootContainer = document.querySelector('#app')
拿到 rootContainer :
拆分成两个步骤
createApp(App)
.mount(“#root”)
createApp(App)关于 App我们先来看用户这边的操作
App.js
1234567891011121314151617export const App = { render() { // UI逻辑 return h( // Vue 中的创建虚拟 DOM 的辅助函数,用于创建虚拟 DOM 节点,接收三个参数: 'div', // type:要创建的 HTML 标签名或组件选项对象. { id: 'root', class: ['red ...

