如何使用JavaScript UI控件,构建Electron应用程序[通俗易懂]

如何使用JavaScript UI控件,构建Electron应用程序[通俗易懂]如何使用JavaScript UI控件,构建Electron应用程序

大家好,又见面了,我是你们的朋友全栈君。

概述

What is Electron?
Electron是一个使用JavaScript、HTML和CSS构建跨平台桌面应用程序的框架。 您可以将Electron与纯JavaScript或您选择的JavaScript框架一起使用:

构建一个简单的Electron应用程序

要创建基本的Electron应用程序,请按照下列步骤操作:

git clone https://github.com/electron/electron-quick-start
cd electron-quick-start
npm install
npm start

您应该看到如下所示的Hello World应用程序:

Electron apps in JavaScript

将JavaScript UI控件(WijmoJS)添加到应用程序

要将WijmoJS添加到应用程序,请先安装它。在命令提示符下,进入app文件夹(electron-quick-start)并键入:

npm install Wijmo

接下来,使用VS Code或您喜好的编辑器打开index.html文件,并添加以下内容:

<!DOCTYPE html>
<html>
  <head>
    <meta charset="UTF-8">
    <title>Hello World!</title>

    <!-- add Bootstrap and Wijmo css -->
    <link href=https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css
          rel="stylesheet"/>
    <link href=https://cdn.grapecity.com/wijmo/5.latest/styles/wijmo.min.css
          rel="stylesheet"/>

    <!-- define the app styles -->
    <style>
      .app-panel {
        margin: 0 48pt;
      }
      .app-panel .wj-control {
        display: inline-block;
        vertical-align: top;
        width: 400px;
        height: 300px;
      }
    </style>
  </head>
  <body>
    <div class="container">
      <h1>Hello World!</h1>
      <p>
        <!-- Node.js APIs are available in this renderer process. -->
        We are using Node.js
        <script>document.write(process.versions.node)</script>,
        Chromium <script>document.write(process.versions.chrome)</script>,
        and Electron
        <script>document.write(process.versions.electron)</script>.
      </p>

      <!--add Wijmo controls to the page -->
      <div class="app-panel">
        <div id="theGrid"></div>
        <div id="theChart"></div>
      </div>
    </div>
    <script>
      // You can also require other files to run in this process
      require('./renderer.js')
    </script>
  </body>
</html>

在这一步中,我们为两个WijmoJS控件添加了一些样式和主题元素。接下来,打开“renderer.js”文件并按如下所示进行编辑:

// This file is required by the index.html file and will
// be executed in the renderer process for that window.
// All of the Node.js APIs are available in this process.

// import Wijmo
var wjCore = require('./node_modules/wijmo/wijmo.js');
var wjGrid = require('./node_modules/wijmo/wijmo.grid.js');
var wjChart = require('./node_modules/wijmo/wijmo.chart.js');

// set the Wijmo license key
var key = 'GrapeCity-Internal-Use-Only,…';
wjCore.setLicenseKey(key);

// create the controls
var theGrid = new wjGrid.FlexGrid('#theGrid', {
    itemsSource: getData()
});
var theChart = new wjChart.FlexChart('#theChart', {
    itemsSource: theGrid.itemsSource,
    bindingX: 'country',
    series: [
        { name: 'Sales', binding: 'sales' },
        { name: 'Expenses', binding: 'expenses' },
        { name: 'Downloads', binding: 'downloads' },
    ]
});

// get some random data
function getData() {
    var countries = 'US,Germany,UK,Japan,Italy,Greece'.split(','),
        data = [];
    for (var i = 0; i < countries.length; i++) {
        data.push({
        country: countries[i],
        sales: Math.random() * 10000,
        expenses: Math.random() * 5000,
        downloads: Math.round(Math.random() * 20000),
        });
    }
    return new wjCore.CollectionView(data);
}

实现这段代码首先需要三个WijmoJS模块:WijmoJS Core,Grid和Chart。 (它设置了WijmoJS许可证密钥,因此应用程序在运行时不会显示水印。如果您没有许可证密钥,请跳过此步骤,应用程序仍将运行,但会显示水印元素)

如果您在此之前已经安装了许可证密钥,则不需要特定域。WijmoJS电子应用程序会从文件或本地主机协议运行,因此任何有效的WijmoJS密钥都将起作用,无论用于生成它的域是什么。

最后一步是创建WijmoJS控件并将它们绑定到数据源。 在此示例中,网格和图表绑定到同一数据源。

运行Electron应用程序

像以前一样运行应用程序!

npm start

这次你会看到这个:

Electron apps in JavaScript

由于表格和图表绑定到相同的数据,因此您对网格所做的任何更改(如编辑单元格或排序列)都将自动应用于图表。

现在,请下载WijmoJS,享用WijmoJS JavaScript控件的Electron应用程序吧。


WijmoJS:灵活高效的前端开发工具包,可快速搭建企业 Web 应用程序
图片描述

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/107220.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • leetcode第一刷_Restore IP Addresses

    leetcode第一刷_Restore IP Addresses

    2022年2月6日
    39
  • java InputStreamReader_InputStream

    java InputStreamReader_InputStream简介OutputStreamWriter和InputStreamReader是字节流和字符流转化之间桥梁,OutputStreamWriter继承自Writer接口,而InputStreamReader继承自接口Reader.需要了解的一点是字符流的写入和读取的方式.字符输出流:将字符通过指定编码方式转化成字节数据,然后存储到文件中. 字符输入流:读取文件的字节数据通过相同的编码方式转化…

    2022年9月25日
    0
  • 什么是跨域?如何解决跨域问题?

    什么是跨域?如何解决跨域问题?什么是跨域?浏览器从一个域名的网页去请求另一个域名的资源时,域名、端口、协议任一不同,都是跨域域名:主域名不同http://www.baidu.com/index.html–&amp;gt;http://www.sina.com/test.js子域名不同http://www.666.baidu.com/index.html–&amp;gt;http://www.555.baidu.co…

    2022年6月14日
    28
  • 在线文字识别转换「建议收藏」

    在线文字识别转换「建议收藏」在线文字识别转换http://ocr.wdku.net/conv/index.html

    2022年8月4日
    6
  • linux 安装_weblogic部署Linux

    linux 安装_weblogic部署Linux下载直接去官网下:https://redis.io/download/#redis-downloads快速访问:redis官网通过xftp上传到Linux服务器上,这个应该大家都会。解压文件三、安装C++环境等待下载安装结束,验证:安装成功如图:修改以下两个配置项:1、配置后台运行2、配置允许远程访问文件夹目录下运行到此就运行成功啦~如果在其他服务器访问不到redis,大概率是防火墙没有开放6379端口,解决如下:完毕,谢谢~…

    2022年10月4日
    0
  • 自己动手写操作系统pdf_写作系统

    自己动手写操作系统pdf_写作系统2019-4-26AM9:15前言:记得上初中时,在一张英语报上看到一篇关于史蒂夫乔布斯的文章,那时他才20多岁,就已经达到人生的巅峰,可谓意气风发,我的内心对其充满崇敬之意。联想到表哥家的那台windows95大块头电脑,时常偷偷玩上两把魔兽争霸,那时,已经对这个魔术般奇幻的机器充满好奇。再后来一直到大学,在偌大的图书馆看到关于计算机的书籍,里边总是浮现一些不明所以的代码,既感到神奇的同…

    2022年10月20日
    0

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号