是否可以仅将数据写入本地json文件中?

我试图仅使用angular命中html形式表单上的“提交”,然后将数据写入json文件。我知道我可以使用angular读取json文件,但不确定是否要创建文件。控制器中的onSubmit():

function onSubmit() {

$scope.save = function() {

$http.post('./temp/sample_data.json', JSON.stringify($scope.model)).then(function(data) {

$scope.msg = 'Data saved';

});

};

};

的HTML:

<form name="form" ng-submit="onSubmit()" novalidate>

<formly-form model="model" fields="fields"></formly-form><br/>

<button type="submit">Submit</button>

</form>

不会创建sample_data.json,如果我创建一个空文件,它也不会填充数据。$

scope.model绝对包含数据。如果有人可以提供帮助,将不胜感激。谢谢,阿隆。

回答:

是否可以仅将数据写入本地json文件中?

不会。即使您是从本地文件系统(例如file://myfile.html)或本地Web服务器(例如http://localhost/myfile.htmlhttp://host-

on-my-intranet/myfile.html)运行页面,您仍然无法直接从浏览器托管的JavaScript代码写入文件。

两种选择:

  1. 将其发送到可以将其写出的内容(例如服务器),或者

  2. 提供它作为data:URI(如果可以的话),用户可以右键单击并选择“另存为…”。

这是data:为一些JSON文本创建URI的方法:

    var uri = "data:application/json;charset=UTF-8," + encodeURIComponent(theJSON);

var theData = {

foo: "bar"

};

var theJSON = JSON.stringify(theData);

var uri = "data:application/json;charset=UTF-8," + encodeURIComponent(theJSON);

var a = document.createElement('a');

a.href = uri;

a.innerHTML = "Right-click and choose 'save as...'";

document.body.appendChild(a);

以上是 是否可以仅将数据写入本地json文件中? 的全部内容, 来源链接: utcz.com/qa/399167.html

回到顶部