是否可以仅将数据写入本地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.html
或http://host-
on-my-intranet/myfile.html)运行页面,您仍然无法直接从浏览器托管的JavaScript代码写入文件。
两种选择:
将其发送到可以将其写出的内容(例如服务器),或者
提供它作为
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