0%

Preload 脚本

electron 主进程运行在 Node 环境中,渲染器进程运行在浏览器环境中,正常情况下,渲染器进程访问不了 Node.js API。而预加载(preload)脚本运行于渲染器进程中(自然能访问 window document 等 Web API),却能够访问 Node.js API 和 Electron API,这也为主进程和渲染器进程之间的通信奠定了基础。
预加载脚本可以在 BrowserWindow 构造方法中的 webPreferences 选项里被附加到主进程:

阅读全文 »

Electron 继承了 Chromium 的多进程架构,主要包括主进程和渲染进程。
每个 Electron 应用都有一个单一的主进程作为应用程序的入口点。主进程在 Node.js 环境中运行,这意味着它具有 require 模块和使用所有 Node.js API 的能力。
主进程可以通过 Electron 的 app 模块来控制应用程序的生命周期,此外,应用程序的菜单、对话框、托盘图标等与操作系统相关的操作都由主进程控制。
主进程使用 BrowserWindow 模块创建和管理应用程序窗口,每个窗口都在一个单独的渲染进程中运行。
运行于渲染进程中的代码必须遵照 Web 标准,这也意味着渲染进程无权直接访问 Node.js API,但可以通过预加载脚本解决这一问题。

阅读全文 »

命令式组件是指组件的创建、props 的传递、emits 方法的执行都通过一个函数来完成。
常见的命令式组件有 ELMessage、ElMessageBox、ElNotification 等。

阅读全文 »

时间函数

语法:

1
cubic-bezier(x1, y1, x2, y2)

CSS 时间函数本质上是一个贝塞尔曲线,如下图所示:

阅读全文 »

在没有 scoped 时,我们写的所有样式都是全局样式,一旦类名重复,样式就会被更改,造成污染。scope 的作用就是防止样式污染。

scoped 原理

vue 中 scoped 主要是通过 postcss 实现的,转译代码时做了如下处理:

阅读全文 »

Promise/A+ 规范

Promise/A+

promise 是一个带有 then 方法的对象或者函数。

promise 表示异步操作的最终结果。与 promise 交互的主要方式是通过其 then 方法,该方法注册回调以接收 promise 的最终值或 promise 无法实现的原因。

阅读全文 »