在浏览器外部执行 JavaScript,跨平台 [关闭]

2023-12-12

我正在考虑构建一个基本工具。在构建这个基本工具的过程中,我希望学习一项新技能。我希望使用纯 JavaScript 编写该工具。该工具基本上需要是一个可重用的库。可重用库将主要调用第三方命令行工具。有时,我可能需要将一些文件系统级操作包含在库中,例如复制或删除文件。我还想给这个东西添加一个用户界面。

我觉得我的想法失败了,因为我想跨环境做原生的事情。我愿意not想使用Java。理想情况下,我想使用 JavaScript 编写代码。我不了解 Node.js,但是,从我正在阅读的内容来看,我似乎可以将 Node.js 用于我的可重用库。但是,我不确定可以使用什么从 UI 角度与该库进行交互。

在这种情况下,我是否有一个好主意,使用 Node 作为我的运行时?如果是这样,有没有办法创建一个可以与该库交互的跨平台 UI?谢谢你!


我想到了几种可能性。

  • 节点 webkit:

node-webkit 是一个基于 Chromium 和 node.js 的应用程序运行时。您可以使用 node-webkit 用 HTML 和 Javascript 编写本机应用程序。它还允许您直接从 DOM 调用 Node.js 模块,并支持使用所有 Web 技术编写本机应用程序的新方法。

  • appjs:

AppJS 是一个使用 Node.js 与 Chromium 相结合来开发桌面应用程序的 SDK。

  • Chrome 打包应用程序(没有nodejs部分):

打包应用程序提供与本机应用程序一样强大的体验,但与网页一样安全。就像 Web 应用程序一样,打包应用程序也是用 HTML5、JavaScript 和 CSS 编写的。但打包应用程序的外观和行为类似于本机应用程序,并且它们具有类似本机的功能,比 Web 应用程序可用的功能强大得多。

  • 节点铬:(与 chrome 的轻量级集成 - 您控制/编写一切)

该模块演示了 Node.js 和 Google Chrome(作为两个自治二进制文件)无需太多编程接口即可进行良好的协作。 Node-chrome 是使用 Node.js 创建桌面体验所需的绝对最少的粘合剂。该模块将在 Chrome 和 Node.js 运行的平台上运行。

  • 自己构建/打包您的nodejs代码:让它启动用户默认/首选浏览器,指向nodejs服务。

IMO:node-webkit 非常有趣,因为打包(在基本应用程序场景中)就像将应用程序资源的 zip 压缩到可执行文件一样简单。为正确的环境分发正确的可执行文件,就完成了。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在浏览器外部执行 JavaScript,跨平台 [关闭] 的相关文章

  • 如何使用restify上传文件

    我正在尝试使用 Restify 模块将图像文件上传到 Rest 服务器 更具体地说是 Confluence 但出现断言错误 我不确定我是否使用正确的方法将文件上传到 REST 服务器 有人能指出我正确的方向吗 这是我的尝试 var rest
  • 这个特定的 ReactJs 代码是如何执行的初学者问题?

    我是初学者 正在阅读大量代码 现在我想知道下面的代码我明白这段代码在做什么 我需要澄清的是代码流程 当我运行它时 我看到图像正在加载 React 是从上到下执行代码吗 占位符图像异步获得正确的图像 但会App如果需要时间 组件会开始渲染但没
  • 表单未使用 AJAX 提交

    再次更新 如果有人关心的话 我之前发布的解决方案由于某种原因停止工作 我在 ajax 请求中包含了 beforeSend 并将验证表单的 js 部分粘贴到其中 现在就像一个魅力 form on submit function e e pre
  • JavaScript 中的 Promise.all:如何获取所有 Promise 的解析值?

    我编写了以下node js文件 var csv require csv parser var fs require fs var Promise require bluebird var filename devices csv var d
  • 如何获取调用函数的“this”值?

    如果我有一个这样的函数 function foo this console log this function bar bar prototype func function foo this var test new bar test f
  • HTML5 拖放 - 没有透明度?

    当我将一个元素拖放到页面上时 该元素会变成 幻影 基本上它获得了一些透明度值 有什么办法可以做到吗opacity 1 看来是做不到了 拖动的元素被放入具有自己的不透明度 低于 1 的容器中 这意味着虽然您可以降低拖动元素的不透明度 但您无法
  • 避免 AngularJS 部分视图在 IE 中缓存

    我正在开发一个 ASP NET MVC 应用程序 它也有一些 angularJS 我有一个主页 其中有不同的选项卡 当您单击它们时 它们会加载角度部分视图 主页是这样的 div class widget div div class widg
  • 使用 test() 通过正则表达式进行信用卡验证

    我正在尝试完成一些作业 看来这本书可能做错了 我有一个简单的 html 页面 允许用户在我们的例子中选择信用卡 美国运通卡 然后 用户输入一个数字并根据正则表达式评估该数字 我的问题最终是当 test 计算它返回的数字时是布尔值还是字符串
  • 获取键盘事件中的鼠标位置

    我试图在用户按住 Shift 键时出现选择轮 滚轮应以鼠标位置为中心 然而当我测试这个时 pageX and clientX两者在事件对象上都未定义 是否可以通过键盘事件获取鼠标坐标 不 只需跟踪mousemove事件并持续保存当前位置 以
  • Firefox OS 后台服务

    我想构建一个应用程序 用户可以通过它输入一些设置 并且应用程序将启动后台服务来根据这些设置执行一些任务 我只想在模拟器中运行应用程序和后台服务 我知道它需要 认证 模式才能运行后台服务 但我现在不考虑在 Firefox Marketplac
  • 替换 Javascript 中的引号?

    对于我正在制作的网络应用程序 我将收到文本字符串 其中偶尔包含引号 因为我接下来要 document writing 字符串 所以需要将它们更改为撇号或转义 我该怎么做 因为当我尝试时它似乎不起作用 特别是我认为因为字符串的引号阻止了脚本的
  • 如何在流程图中间隔刻度线?

    我下面有一个流程图 您将看到标签被压缩 我想使刻度之间的宽度确保显示所有标签 标记如下 div div class graph info a href span span a a href class active span span a
  • Rails - 使链接与 ajax 一起工作

    我有一个链接 应该使用 ajax 加载它旁边的部分内容 而无需重新加载页面 链接在这里 这是链接应该转到的控制器 class ProfilesController lt ApplicationController def profile f
  • 检查 href 中是否存在 jQuery 中的查询字符串

    我目前有一段 jQuery 用于附加带有一些位置信息的 URL jQuery a attr href function return this href location 123 abc 我的问题是大多数链接都有一个 其中使用上面的 就可以
  • 托管 React 应用程序和 Express 服务器 cpanel

    我是托管新手 如果有人可以非常详细地解释 这将对我有很大帮助 我有以下问题 我有前端使用react app和后端使用expressjs and mysql 我的计算机中有一个可以运行的简单应用程序 我使用本地主机启动后端和前端 它们工作完美
  • ERR_IMPORT_ASSERTION_TYPE_MISSING 用于导入 json 文件

    这段代码运行良好 我不知道是因为我升级到 Node 17 还是什么原因 但现在我明白了 TypeError ERR IMPORT ASSERTION TYPE MISSING Module file Users xxxxx code pro
  • 如何修复 AJAX 在选中复选框时始终触发?

    有时这个 AJAX 会触发 有时不会 让我解释一下 habit js document ready function habit check change function habit this parent siblings habit
  • 条件顺序仅在 init AngularJS 上执行

    如何在视图初始化时仅运行 orderBy 过滤器一次 我不希望我的列表在运行时被重新排序 li li 使用 orderBy 作为控制器中的过滤器 app controller DemoCtrl scope filter function s
  • 垃圾收集器不适用于 NodeJS / Chrome 中的类型化数组

    我最初将其记录为原项目中的一个问题 https github com nodejs help issues 3590 它立即转移到帮助主题 没有很好的解释 所以现在我想在这里提问 如果我们在 NodeJS v14 v16 v17 中运行以下
  • 使用 Promise 语法编写同步代码有什么好处吗?

    有同步承诺这样的概念吗 使用 Promise 语法编写同步代码有什么好处吗 try foo bar a b bam catch e handleError e 可以写成类似的东西 但使用同步版本then foo then bar bind

随机推荐

  • 为什么对象类型的引用变量用作其他对象类型时必须进行强制转换

    虽然Java中的所有类都是Object类的子类 但与其他对象类型不同 Object类型的引用变量在没有强制转换的情况下不能分配给任何其他引用类型 例如 public class Inheritance public static class
  • 始终在 rootViewController 处打开应用程序

    在我的应用程序中 我希望用户始终看到rootViewController即使应用程序尚未完全终止 打开应用程序时的视图也是如此 我考虑过的一种选择是打电话abort in applicationWillResignActive 但这似乎不是
  • Java 和 SQLite 之间的时间戳差异

    你好 我有 SLQLite 数据库 其中有表 water logs CREATE TABLE water logs id INTEGER PRIMARY KEY AUTOINCREMENT amount REAL NOT NULL icon
  • 多显示器/双显示器系统上的 window.open() - 窗口在哪里弹出?

    在多显示器系统上使用 javascript window open 时 如何控制弹出窗口打开哪个显示器或显示空间中的哪个位置 对我来说 它似乎失去了控制 而且它的行为是随机的 window open 双屏 搜索的结果揭示了这个奇特的金块 双
  • Discord py 向频道发送消息

    我正在尝试使用 Discord py 库将消息从一个通道发送到另一个通道 想法 通道 1 用户无权读取和发送通道 2 中的消息 我尝试编写应该发送这些消息的机器人 例如 用户编写 发送 channel2 hello 机器人将此消息发送到通道
  • 在 Python 中使用 BeautifulSoup 从 HTML 脚本标签中提取 JSON

    我有以下 HTML 我应该如何从变量中提取 JSON window INITIAL STATE
  • Mac OS X Cocoa 多视图应用程序导航

    我已经花了整整 2 天的时间试图弄清楚如何使用 NSViewControllers 来创建多视图应用程序 这就是我所做的 我有 2 个视图控制器和 MainMenu xib 的窗口 我还有一个 AppController 它是两个视图控制器
  • python whois Windows 版

    我尝试在 python 中获取 whois 我用这个http code google com p pywhois 但它只能在linux下运行 可以在windows上运行吗 目前我收到错误 因为使用了内部linux命令whois 在 Wind
  • 创建鼠标聚光灯

    我正在尝试创建一个简单的应用程序 将聚光灯放在鼠标光标位置周围 使其他所有内容变暗 并用鼠标移动聚光灯 像这样的东西 我对 Qt 没有太多经验 我开始于这个例子 却走不了多远 我创建了一个位于顶部的窗口并设置了其不透明度 但我不知道如何使其
  • 调用一个函数,每个元素都是 Databricks 中的一个流

    我在 Databricks 中有一个 DataFrame 流 我想对每个元素执行一个操作 在网上我找到了特定目的的方法 比如将其写入控制台或转储到内存中 但我想添加一些业务逻辑 并将一些结果放入Redis中 更具体地说 这就是非流情况下的样
  • 如何以编程方式发现 git 使用的跨平台编辑器?

    假设我们在 Python 环境中 我们可以在 Windows OSX 或 Linux 上 我们如何确定git使用的编辑器 如果只是环境变量 我们可以这样做 os getenv GIT EDITOR 但它也可能在配置中 可以解析 git 配置
  • JSF 属性引用生命周期比目标作用域视图更短的作用域中的对象

    我有一个视图范围的托管 bean 其托管属性绑定到查询字符串参数 JSF 给了我熟悉的异常 javax faces FacesException Property reset references object in a scope wit
  • 字符串到日期转换返回错误值

    我正在尝试将字符串转换为日期 但返回值是错误的 String startDate 2013 07 24 Date date new Date try DateFormat formatter new SimpleDateFormat yyy
  • json.Marshal(struct) 返回“{}”

    type TestObject struct kind string json kind id string json id omitempty name string json name email string json email f
  • getActionBar() 返回 Null (AppCompat-v7 21)

    在我将 AppCompat v7 更改为 21 0 0 并且编译没有问题后 我的应用程序在运行时就崩溃了 它给了我错误 java lang NullPointerException Attempt to invoke virtual met
  • 使用 Android 服务处理网络连接

    我正在开发一个 Android 应用程序 需要保持与聊天服务器的网络连接 我知道我可以创建一个服务来启动与服务器的连接 但是该服务如何通知 Android 活动新传入的消息 活动需要更新视图以显示新消息 我对 Android 还很陌生 所以
  • 如何使用 Spring Security 重定向到拒绝访问页面

    我有一个使用 JSF Spring 的应用程序 我正在使用 spring security 并且工作正常 但是 当我尝试在没有身份验证的情况下访问安全页面时 我只是显示 403 禁止页面 而不是将我重定向到被拒绝的页面 我不知道 appli
  • 如何获取数组键是否受保护?

    我有这种类型的数组 我想获取数组元素 context course Object id protected gt 15 contextlevel protected gt 50 instanceid protected gt 2 path
  • 为什么 ReferenceEquals 和 == 运算符的行为与 Equals 不同

    我有一个实体 它不会覆盖任何平等成员 运算符 当比较它们的两个代理时 我从Nhibernate session 结果根据相等方法变化 ReferenceEquals 第一 第二 false 第一个 第二个 false 等于 第一 第二 tr
  • 在浏览器外部执行 JavaScript,跨平台 [关闭]

    Closed 这个问题是基于意见的 目前不接受答案 我正在考虑构建一个基本工具 在构建这个基本工具的过程中 我希望学习一项新技能 我希望使用纯 JavaScript 编写该工具 该工具基本上需要是一个可重用的库 可重用库将主要调用第三方命令