javascript - AngularJS + Electron : Save Data to JSON File

标签 javascript angularjs electron taffydb

我对 AngularJS 和 Electron 非常陌生,目前正在开发一个简单的桌面应用程序,该应用程序从 JSON 文件读取数据并允许用户更新和删除数据。我还使用 TaffyDB 来查询数据。我可以从 JSON 文件获取数据,但无法将其存储在 JSON 文件中。

到目前为止我尝试过的是:

myApp.controller('homeController', ['$scope', '$http', function($scope, $http) {

    $scope.saveData = function() 
    {
        var data = $scope.data;

        $http.post('/src/db/db.json', data).then(function (response) {

            console.log(response);

        }, function (response) {

            console.log(response);

        });
    };

}]);

在浏览器上执行事件时出现以下错误:

POST http://127.0.0.1:64262/src/db/db.json 404 (Not Found)

这是正常的,因为我们无法从 JavaScript 访问用户的文件系统。

当我将应用程序作为 Electron 包执行时,我得到以下信息:

Object {data: Array[2], status: 200, config: Object, statusText: "OK"}

但是文件没有被修改。

我想知道是否有任何方法可以使用 AngularJS 和 Electron 来完成此任务。

重要说明:此应用程序需要作为独立的桌面应用程序运行。换句话说,我的客户不需要安装其他软件或应用程序就可以使用此应用程序。

最佳答案

您无法使用 HTTP 写入文件系统,这仅适用于网络。

Electron 构建于 Node.js 之上。那么看看Node.js File System module 。例如:

fs.writeFile('/src/db/db.json', data, (err) => {
  if (err) throw err;
  console.log('It\'s saved!');
});

关于javascript - AngularJS + Electron : Save Data to JSON File,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42585573/

相关文章:

angularjs - 从 token 创建 Django session

javascript - node.js - 如何在expressjs中将数据从 Controller 传递到中间件?

javascript - 使用 PHP 将 HTML 代码插入另一个文件

javascript - 如何填充下拉列表,观察者返回的值?

javascript - AngularJS - 在 Controller 名称中使用 NgRoute 的参数

javascript - 通过Jquery将JavaScript数组文字传递给angularjs中自定义指令的属性

node.js - 通过node.js在另一个目录中运行npm install

ruby-on-rails - 如何在 Electron 中正确运行 Rails 应用程序?

javascript - 摆脱 document.write?

javascript - 在 JavaScript 中迭代 MooTools JSONP 输出