1.使用localStorage
vue-cli根目录创建node文件用于将后台给的数据处理成前端想要的数据字典表,后台给的数据是中英文的码值表。在这里,我需要判断当前
localstorage中存储是中文模式还是英文模式。但是,我发现使用
localstorage.getItem('lang)
会报错:localstorage is not defined
通过其他文件引入也不行,因为node读取的是文本,仍然会报错:localstorage is not defined
后来,经过在网上搜索发现,同行说localstorage在nodejs服务器端使用,因为nodejs是服务器技术,要在客户端用,需要安装 node-localstorage
npm install node-localstorage
const LocalStorage = require('node-localstorage').LocalStorage,
localStorage = new LocalStorage('./scratch');
最后,发现可以用了!谢谢同行提供的宝贵建议!
2.node格式化输出json
fs.writeFile(输出文件, 数据, (err) => {
if (err) throw err;
console.log('done');
});
数据默认是[object object],使用JSON.stringify(value),文件是压缩格式(即:一行显示)。要想格式化输出,则需要使用如下格式:
JSON.stringify(value[, replacer [, space]])
参数:
value
将要序列化成 一个JSON 字符串的值。
replacer 可选
如果该参数是一个函数,则在序列化过程中,被序列化的值的每个属性都会经过该函数的转换和处理;如果该参数是一个数组,则只有包含在这个数组中的属性名才会被序列化到最终的 JSON 字符串中;如果该参数为null或者未提供,则对象所有的属性都会被序列化。
space 可选
指定缩进用的空白字符串,用于美化输出(pretty-print);如果参数是个数字,它代表有多少的空格;上限为10。该值若小于1,则意味着没有空格;如果该参数为字符串(字符串的前十个字母),该字符串将被作为空格;如果该参数没有提供(或者为null)将没有空格。
参考文献:https://blog.csdn.net/major_zhang/article/details/79472113