Electron 客户端发起请求传参
this.$axios.get(`/alipay/pc/bankSale/pay/${this.data.id}`).then((res) => {
window.shell.openExternal(`${WEB_URL}/aliPayClient?htmlData=` + this.urlEncode(res))
// this.$router.push({ path: '/aliPay', query: { htmlData: res } })
urlEncode(str) {
var s = ''
if (str.length == 0) {
return ''
s = str.replace(/%/g, '%25')
s = s.replace(/&/g, '%26')
s = s.replace(/ /g, '%20')
// s = s.replace(/\\+/g, '%2B')
// s = s.replace(/\//g, '%2F')
s = s.replace(/=/g, '%3D')
s = s.replace(/#/g, '%23')
return s
web项目正常获取参数即可
<template>
<!-- <div v-html="payGateWay">{{ payGateWay }}</div> -->
<div v-html="payGateWay"></div>
</template>
<script>
export default {
name: 'AliPay',
auth: false,
components: {},
data() {
return {
payGateWay: '支付中请稍后',
computed: {},
mounted() {
this.payGateWay = this.$route.query.htmlData
console.log('object :>> ', this.payGateWay)
this.$nextTick(() => {
document.forms[0].submit()
// console.log('document.forms[0] :>> ', document.forms)
methods: {},
</script>
<style scoped lang="less"></style>
与Google Chrome和其他Chromium浏览器相比,RAM使用量更少(您可以清理缓存)
浏览器的系统要求与Electron.js相同,因此这是所有操作系统都必须具有64位。 支持其他架构,但发行版中不支持。
Linux
7及更高版本
还未公布您需要从源代码运行。
Ubuntu 16.04 浅顶软呢帽21 Debian 8
该浏览器位于测试版中。 如果您真的要测试它,请克隆此存储库,安装npm i && npm i -g electron electro并使用命令electron .运行electron . 或npm start 如果您能解决所有可能的错误并提高性能,我们将不胜感激!
通过注册的自定义协议使你的应用程序与操作系统进行集成,并通过链接或请求的方式进行通信。通过定义协议和在操作系统中注册,你的应用程序能够被唤起并接收数据,以实现与浏览器或其他应用程序的交互。
有些时候网页中某些功能受到浏览器的限制,需要调用桌面客户端完成,例如在网页端使用迅雷链接下载文件,可以直接启动本地的迅雷客户端进行下载。那么使用Electron构建的桌面客户端如何实现被网页调启和传参呢?
Windows系统中是通过注册伪协议来实现的,在注册表中添加URL Protocol来实现伪协议。在Electron实现伪协议主要有两种方式:
1.通过setAsDefaultProtocolClient注册协议
根据Electron文档中的介绍,可使用app.setAsDefaul
场景用HTML和CSS和JS构建跨平台桌面应用程序的开源库Electron的介绍以及搭建HelloWorld:在上面搭建起来Electron的HelloWorld程序后,怎样对程序进行调试。Electron分为渲染进程和主进程。渲染进程:用户所看到的web界面就是由渲染进程描绘出来的。包括html,css和js。主进程:Electron 运行 package.json 的 main 脚本的进程被称...
if (!app.isPackaged) {
// 如果是开发阶段,需要把我们的脚本的绝对路径加入参数中
args.push(path.resolve(process.argv[1]))
// 加一个 -- 以确保后面的参数不被 Electron 处
var electron = require('electron')
var app = electron.app
var BrowserWindow = electron.BrowserWindow
var mainWindow = null
app.on('ready', () => {
mainWindow = new BrowserWindow({
width: 400,
height: 300,
webPre