首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

第二章 你第首个Electron应用 | Electron in Action(中译)

在本章中,我们通过从头开始设置和构建一个简单的应用程序来管理书签列表,从而学习Electron的基本知识。该应用程序将利用只有在现代的浏览器中才能使用的特性。...理论上,您可能有一个没有package.json的Node项目。但是,当加载或构建应用程序时,Electron依赖于该文件及其主要属性来确定从何处开始。...我们可以使用Node的模块系统,而不需要额外的配置。让我们移除标签中的所有代码到-现在是空的-app/renderer.js文件中。...我们通过防止默认操作来做到这一点。我们还缓存URL输入字段的值,以便将来使用。 列表2.16 向submit按钮添加事件侦听器: ....Electron使用npm的package.json清单来决定那个文件被加载作为主进程 我们通过使用npm init从样板文件中生产package.json 我们通常在每个项目中都在本地安装

4.7K30

设计和实现一个 Chrome 插件提升登录效率

扩展允许您通过使用 API 修改浏览器行为和访问 Web 内容来“扩展”浏览器。...Chrome 浏览器将会识别包含 manifest.json 文件的目录为扩展文件,所以我们可以开发一个 Chrome Extension 项目来解决这一问题。...缺点 统一使用者针对不同浏览器访客角色无法实现账号打通的能力,这一缺陷将在下次接入后端时弥补。 清除本地缓存时,会误删数据。...美观的 UI 选型 由于原政采云登录页面是用内部基于 AntD 开发的组件库,为了保持视觉风格的统一,我选择了继续使用我们内部的组件库,每个团队也可以根据自己情况选择自己的组件库,或者开源的组件库,如...name:扩展名,显示在我的扩展文件中 manifest_version:标记 manifest.json 文件的版本号。

1.6K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Puppeteer 初探之前端自动化测试

    puppeteer是一个nodejs的库,支持调用Chrome的API来操纵Web,相比较Selenium或是PhantomJs,它最大的特点就是它的操作Dom可以完全在内存中进行模拟既在V8引擎中处理而不打开浏览器..." 可能会遇到 无法下载Chromium 问题 是因为在执行安装的过程中需要执行install.js,这里会下载Chromium,官网建议是进行跳过,我们可以执行 —ignore-scripts 忽略这个...,并打开一个页面,细心的你一定发现在创建浏览器的时候我们传了headless参数,如果设为true的话就能可以在不打开外部浏览器的情况下完全利用v8引擎来进行页面的测试,简单说就是页面以及Dom完全在内存中...第五步:在拉起米大师支付浮层之后,我们需要去点击提示中的确定按钮,由于米大师是在iframe中打开的,所以我们需要先获取到我们当前页frame,这个可以调用刚创建的页面实例page的mainFrame...主要使用 tracing.start,stop生成trace.json文件 trace.json 接下来我们打开Chrome的开发者工具,进入到Performance栏目下,把刚才的trace.json

    13.2K64

    Vue + Node.js 搭建「文件上传」管理后台

    getFiles(): 用于获取服务器上传文件夹中的文件列表 文件位置:src/services/UploadFilesService.js import http from ".....[vue-uploads-files] 文件选择器、上传按钮、文件列表都已经可以显示出来了,但还无法上传。这是因为后端部分还没有跑起来,接下来,我带领大家手把手搭建上传文件的后端部分。...✦ 后端部分 - 上传文件 Node.js + Express + Multer 前文我们介绍了如何使用 Vue 搭建上传文件管理工具的前端部分,接下来我教大家使用 Node.js + Express.../files 获取文件列表(文件名+URL) GET /files/[filename] 下载指定文件 配置 Node.js 开发环境 在根目录新建 Node.js 的后端文件夹 kalacloud-express-file-upload...Node.js 后端「上传文件」源码 你可以在我的 github 上下载到完整的 Node.js 后端「上传文件」源码。

    12.1K30

    【腾讯云 Cloud Studio 实战训练营】沉浸式体验编写一个博客系统

    您可以尝试以下步骤来解决这个问题: 清除 npm 缓存:在终端中执行以下命令清除 npm 缓存: npm cache clean --force 删除 package-lock.json 文件和 node_modules...主要内容区域中使用了v-for指令遍历blogJson数组中的对象,在每个对象对应的中展示博客的标题、描述和图片。 脚本部分: 使用了import语句引入了一些资源文件和组件。...methods中定义了一个handleLink(item)方法,当博客列表中的标题被点击时,会在新窗口中打开对应的博客链接。 样式部分: 使用了SCSS预处理器语法。...|-- routes.json // 路由的配置文件(JSON 格式) | |-- server.js // Nuxt.js 服务器的入口文件 | |--...(results, f, ensure_ascii=False, indent=4) print('结果已保存到 result.json 文件中') 项目运行 点击下面按钮即可获得该应用哦!

    18010

    Puppeteer已经取代PhantomJs

    是 Chrome 开发团队在 2017 年发布的一个 Node.js 包,用来模拟 Chrome 浏览器的运行。...,xPath 等来获取对应的元素 JsHandle:对应 DOM 中的 javascript 对象,ElementHandle 继承于 JsHandle,由于我们无法直接操作 DOM 中对象,所以封装成...脚本 Puppeteer 最强大的功能是,你可以在浏览器里执行任何你想要运行的 javascript 代码,下面是我在爬邮箱的收件箱用户列表时,发现每次打开收件箱再关掉都会多处一个 iframe 来,随着打开收件箱的增多...对象上注册一个函数,这个函数在 Node 环境中执行,有机会在浏览器环境中调用 Node.js 相关函数库 6、 抓取 iframe 中的元素 一个 Frame 包含了一个执行上下文(Execution...的 Performance 可以上传对应的 json 文件并查看分析结果 – 我们可以写脚本来解析 trace.json 中的数据做自动化分析 – 通过 tracing 我们获取页面加载速度以及脚本的执行性能

    6.4K10

    干货 | van+mpvue开发微信小程序入门

    使用 mpvue 开发小程序,你将在小程序技术体系的基础上获取到这样一些能力: Vue.jsVuexwebpackVue.js 2.2.2....目前Fly.js支持的平台包括:Node.js 、 微信小程序 、 Weex 、 React Native 、 Quick App 和浏览器,这些平台的 JavaScript 运行时都是不同的。...安装 使用NPM npm install flyio 使用CDN(浏览器中)js">...usingComponents全局引入van组件不起效果 ** 2020-03-02: **使用mpvue搭建的项目,在app.json中,全局引入 van 组件不生效,其实和有赞的组件没有关系,是因为我电脑上的开发者工具很早之前就安装了...提交按钮固定在底部 **我的出发点:**用户在填写表单过程中,不用再次滚动也能操作提交按钮,按钮明显、易用。 8.2.

    2.1K40

    12 个提高JavaScript编码效率的 NPM 技巧

    在这篇文章中,我将分享 NPM 的技巧和诀窍,它们可以提高你的工作效率,让你更明智、更高效地使用NPM。 1. 初始化包 我们可以运行 npm init命令来初始化包,但是它会询问关于包、作者等信息。...假设我需要一个按钮组件,而我的一个队友已经按钮组件发布到我们在 Bit 上的组件集合上了。...首先,将 Bit 配置为scope (范围包) npm config set @bit:registry https://node.bit.dev 然后,我将转到我团队的组件集中寻找按钮: 找到 button...在package.json中配置自己的变量 我们可以定义 package.json 文件中的 config ,来定义自己的变量作为带有 npm_package_config_ 前缀的npm环境变量,如下...npm run 命令会显示我们在 package.json 文件中定义的所有脚本。

    1.3K30

    从入门到实践:Uni-app跨平台开发与应用

    二、Uni-app的安装与使用 1. 安装Node.js和HBuilderX Uni-app需要使用Node.js作为开发环境,因此需要先安装Node.js。...是应用的根组件,main.js是应用的入口文件,manifest.json是应用的配置文件,pages.json是页面配置文件,uni.scss是应用的公共样式文件。...运行Uni-app项目 在HBuilderX中,可以点击工具栏上的“运行”按钮,选择需要运行的平台,即可将代码编译成对应的应用,并在对应的模拟器或浏览器中运行。 三、Uni-app的基本语法 1....Uni-app的组件库包括基础组件库和扩展组件库。 1. 基础组件库 Uni-app的基础组件库包括按钮、表单、布局、列表、导航等组件,这些组件可以直接在页面中使用。...获取位置信息 可以使用uni.getLocation方法来获取设备的位置信息。

    1.7K30

    【腾讯云 Cloud Studio 实战训练营】沉浸式体验编写一个博客系统

    在这个过程中,您将学习到 如何使用Cloud Studio 进行项目开发 Cloud Studio 项目如何链接到coding 作为项目的管理仓库 如和使用python 来爬取你的csdn 博客信息 Nuxt.js...您可以尝试以下步骤来解决这个问题: 清除 npm 缓存:在终端中执行以下命令清除 npm 缓存: npm cache clean --force 删除 package-lock.json 文件和 node_modules...主要内容区域中使用了v-for指令遍历blogJson数组中的对象,在每个对象对应的中展示博客的标题、描述和图片。 脚本部分: 使用了import语句引入了一些资源文件和组件。...methods中定义了一个handleLink(item)方法,当博客列表中的标题被点击时,会在新窗口中打开对应的博客链接。 样式部分: 使用了SCSS预处理器语法。...安装脚手架 在安装脚手架的时候,非常费时间,等了好久,希望可以改进下 优点 在安装项目的时候 , 我发现使用的node 版本不对但是, 我不清楚Cloud Studio 是否有nvm 版本管理工具,

    35371

    GPT3 探索指南(三)

    因此,在 Express 服务器运行时,应用程序可在网上访问,并通过浏览器窗格中的 URL 访问。此外,当您进行更改时,您需要点击Stop按钮然后点击Run按钮来停止和重新启动 Express。...{username}.repl.co 在端点 URL 输入框下方,选择 Body 选项卡,选择 Raw 单选按钮,并从内容类型下拉列表中选择 JSON。...使用这种方法,如果答案无法从文档中推导出来,由 routes/answer.js 文件定义的引擎 - 我们使用了 Curie 引擎。...点击运行按钮,然后在问题输入中输入你最喜欢的食物是什么?,然后点击获取答案按钮。...我们将使用一个名为 bad-words 的 Node.js 库来检查问题文本中是否包含粗话,然后再将其发送到 OpenAI API。

    9200

    创建 React 应用的 7 种方式,你用过几种?

    vite 采用浏览器支持 ES 模块来解决开发时构建缓慢的问题,使用 esbuild 预构建依赖(开发时不会变动的纯 JavaScript 代码,一般是 node_modules 中的第三方包)。...例如,在 Next.js 中,可以使用 getServerSideProps 方法获取数据,并在服务端渲染页面,提升首屏加载速度。 支持静态导出,可以提升 SEO。...例如创建一个 React 项目: 打开 StackBlitz 网站,并点击右上角的新建按钮。 在弹出的新建项目对话框中,选择 React 模板,并输入项目名称,点击确定按钮。...StackBlitz 中的 React 项目也是使用了 react-scripts 只不过是把 Node 运行在浏览器里面,感兴趣的同学可以看下 WebContainer 介绍 小结 我们可以轻松使用...cli 来创建前端应用, 这样开发者可以更加专注业务开发, 以上便是创建 react 应用的常见 7 种方式,当然还有其他方案,无论使用哪种方式创建 React 项目,都需要了解 Node.js 和底层技术的使用

    7.4K10

    node爬虫入门

    爬虫从加载的网页资源中抓取的相应内容具有一定的局限性,比如使用JavaScript动态渲染的内容、需要用户登录等操作后才能展示的内容等都无法获取到,后文将介绍使用puppeteer工具库加载动态资源。...我们想要获取到这块数据就需要,在node服务中运行一个浏览器环境,然后让网页在浏览器环境下面运行,之后我们就能读取到这个列表的内容了,具体用到puppeteer工具库(https://github.com...由于开启浏览器环境、运行解析渲染html文件、运行js文件等内容需要大量的时间,因此使用这种方式爬取需要消耗大量时间。...但是这个库中的api没有使用then-able方案,使用的是callback方案,以及js动态写入的内容无法获取到。...:queue /** * 入口 */ queue(url) { // 是否是读取非js写入的内容,这里不直接使用获取js动态写入的内容的函数的原因是,获取js动态写入的内容需要开启浏览器、解析渲染

    5.3K20

    1 分钟,让你的网站充满吸引力!

    我们团队的面试刷题产品 - 面试鸭最近就遇到了这样一个难题:明明我们网站右下角就有联系客服按钮、而且我们每道面试题目下方都有反馈按钮,但是很多用户还是不知道怎么给我们反馈问题。...我们可以使用一些现成的库来简化编码,比如 2D 渲染引擎 pixi.js,或者使用 Live2D 官方提供的 Web SDK。...作者虽然也考虑到了这一点,但他的做法是搞了个 PHP 的后端项目,通过接口的方式来动态获取要加载的模型列表和对话信息。 我就给网站加个看板娘,你还让我去搭一个后端?还让我去搞 PHP?...由于项目用了 npm 进行管理,你需要先安装 Node.js 服务,然后在项目内安装依赖、再执行 build 打包,就得到了新的加载文件(waifu-tips.js)。.../autoload.js"> 将模型文件和模型列表配置文件放到项目根目录中: 大家可以自行修改模型列表配置文件 model_list.json (

    10910

    【腾讯云Cloud Studio实战训练营】使用Cloud Studio&Flutter完成跨平台博客的搭建

    运行环境:工作空间内代码运行的环境,您可以选择预置环境,包含 Ubuntu、Python、Java 和 Node.js 四种;也可以选择将其连接到自己的云服务器上, 代码来源:工作空间内的代码来源,此处我们选择...7.2创建自定义模板 当您处在当前项目 IDE 中,您可以创建自定义模板: 这里我把我的Flutter 博客网站发布成模版。 (1)点击功能栏中的“文件”,在下拉选项中选择“发布自定义模板”; ?...//cloudstudio.net/templates/r9IAX1JuTF2 (2)通过嵌入 Markdown 徽章进行分享,将模板徽章嵌入 README 文件或者博客中,您的伙伴点击徽章即可获取模板...全功能:无需下载安装,随时随地开发编码,拥有媲美本地 IDE 的流畅编码体验。 多环境:内置 Node.js、Java、Python 等常见环境,也可以连接到云服务器进行资源管理。...兼容 VS Code 插件:若默认的配置无法满足需求,可以在线安装 VS Code 插件来增强使用体验。 持久化和快速加载:随开随写,随时保存,再也无需担心断电未保存,不浪费您的每一份灵感。

    44760

    【学习笔记】黑马程序员Node.js全套入门教程 | 基础篇

    Node.js 是JavaScript的后端运行环境。Node.js 中无法调用DOM和BOM等浏览器内置API。.../a'会在路径中多出一个点(.)使用path.join可以解决此问题获取路径中的文件名使用path.basename()方法,可以获取路径中的最后一部分,经常通过这个方法获取路径中的文件名,语法格式如下...,有三种加载方式:在被加载的目录下查找 package.json 的文件,并寻找 main 属性,作为 require() 加载的入口如果没有 package.json 文件,或者 main 入口不存在或无法解析...来源不同于Node.js 中的内置模块与自定义模块,包是由第三方个人或团队开发出来的,免费供所有人使用。Node.js 中的包都是免费且开源的,不需要付费即可免费下载使用。...,作为包的根目录在itheima-tools文件夹中,新建如下三个文件:package.json(包管理配置文件)index.js(包的入口文件)README.md(包的说明文档)// packge.json

    2.3K01

    15分钟手摸手教你写个可以操控 Chrome 的插件

    websocket 来发送信息给 chrome 插件 为了方便起见,我这边就用 node 的 express 以及 socket.io 这个库来启用 目录结构和代码都很简单 5.png // index.js...7.png 第三步 开始使 chrome 插件 与 本地的 node 服务相互通信 在开始与 node 服务通信前我们要了解下 chrome 插件的几种 js 的使用场景 content-scripts...这个主要功能就是 Chrome 插件中向页面注入脚本 在第一步的操作中正是该文件在别的页面控制台中打印出了我们期望的 log content-scripts 和 原始页面共享 DOM,但是不共享 JS.../background.js"> 我们可以使用两种方式来调试 这个常驻后台文件 1.直接在 chrome 拓展点击对应按钮即可弹出调试 8.png 9.png 2.直接在浏览器上输入对应的地址...js 操作 我们就来完成一个简单的任务,打开百度页面,搜索关键字,并将搜索到的各个 title 获取 我这边为了做演示方便点就直接引入了 jq 来操作 dom 在 js 文件夹下创建 operate.js

    1.5K20

    梳理 6 项 webpack 的性能优化

    /node_modules 等等),相对路径将类似于 Node 查找 'node_modules' 的方式进行查找。「使用绝对路径,将只在给定目录中搜索」。...,触发普通解析 PS: 如果你使用了TS,在webpack中使用了resolve.alias,一般需要在tsconfig.json文件中对其进行配置,否则使用alias会导致无法找到响应目录而报错: /...,Webpack会根据extensions定义的后缀列表进行文件查找,所以: 列表值尽量少 频率高的文件类型的后缀写在前面 源码中的导入语句尽可能的写上文件后缀,如require(....Webpack中使用DefinePlugin插件来定义配置文件适用的环境。 3.2 压缩代码-JS、CSS 1....代码在浏览器上运行时只有点击了按钮才会开始加载show.js,且import语句会返回一个Promise,加载成功后可以在then方法中获取加载的内容。

    1.9K20

    Chrome - JavaScript调试技巧总结(浏览器调试JS)

    为方便大家学习和使用,本文我对 Chrome 的调试技巧做个系统的总结。...(2)刷新浏览器,当页面代码运行到断点处便会暂停执行。 ? 方法2:在 js 文件中设置 (1)我们在 js 源文件中需要执行断点操作的代码前加上 debugger。...六、快捷键 1,快速定位文件 使用快捷键:ctrl + p ? 2,快速定位文件中成员函数 使用快捷键:ctrl + shif + o ?...但如果后台返回的是没有格式化的 JSON 数据,查看起来会异常痛苦 ? (2)我们可以通过 chrome 控制台的 copy 接口来实现 JSON 数据的格式化。...(3)Snippets 的方便之处在于,我们只需要打开 Chrome 就可以编写一份任意页面都可以运行的JS代码 2,使用样例 (1)点击“New Snippet”按钮,创建一个新的片段文件 ?

    25.1K43
    领券