download.js参数(download可以返回错误信息吗)

seosqwseo2个月前 (08-31)测评日记31

一、Node.js**安装与环境变量配置

**: Download| Node.js(nodejs.org)

1、至此Node.js已经安装完成,可以先进行下简单的测试安装是否成功了,后面还要进行环境配;

2、在键盘按下【win+R】键,输入cmd,然后回车,打开cmd窗口;

3、安装完后的目录如下图所示;

4、此处说明下:新版的Node.js已自带npm,安装Node.js时会一起安装,npm的作用就是对Node.js依赖的包进行管理,也可以理解为用来安装/卸载Node.js需要装的东西。

5、输入 node-v显示node.js的版本,说明node安装成功;输入 npm-v显示npm`显示npm的版本,说明npm安装成功。

1、说明:这里的环境配置主要配置的是npm安装的全局模块所在的路径,以及缓存cache的路径,之所以要配置,是因为以后在执行类似:npm install express [-g](后面的可选参数-g,g代表global全局安装的意思)的安装语句时,会将安装的模块安装到【C:\Users\用户名\AppData\Roaming\npm】路径中,占C盘空间

2、例如:我希望将全模块所在路径和缓存路径放在我node.js安装的文件夹中,则在我安装的文件夹【D:\Develop\nodejs】下创建两个文件夹【node_global】及【node_cache】。

npm config set prefix"D:\Develop\nodejs\node_global"

npm config set cache"D:\Develop\nodejs\node_cache"

1、接下来设置环境变量,关闭cmd窗口,“我的电脑”-右键-“属性”-“高级系统设置”-“高级”-“环境变量”;

2、进入环境变量对话框,在【系统变量】下新建【NODE_PATH】,输入【D:\Develop\nodejs\node_global\node_modules】,将【用户变量】下的【Path】修改为【D:\Develop\nodejs\node_global】。

1、配置完后,安装个module测试下,我们就安装常用的express模块,打开cmd窗口

2、输入如下命令进行模块的全局安装:

npm install express-g#-g是全局安装的意思

二、nodejsres***download可以返回错误信息吗

1、nodejsres.download可以返回错误信息。

2、在Node.js中,res.download方法用于向客户端发送文件。如果文件不存在或者无法访问,该方**返回一个错误。可以通过在回调函数中处理错误来返回错误信息。因此nodejsres.download可以返回错误信息。

3、除了在回调函数中处理错误之外,还可以使用try-catch语句来捕获错误并返回错误信息。

三、NW.js是什么如何使用

本文主要和大家分享NW.js是什么如何使用?NW.js(原名 node-webkit)是一个基于 Chromium和 node.js的应用运行时,通过它可以用 HTML和 JavaScript编写原生应用程序。它还允许您从 DOM调用 Node.js的模块,实现了一个用所有 Web技术来写原生应用程序的新的开发模式。

(1)以网络流行的技术编写原生应用程序的新方法

(2)基于HTML5, CSS3, JS and WebGL而编写

(3)完全支持nodejs所有api及第三方模块

(4)可以使用DOM直接调用nodejs模块

(6)支持运行环境包括32位和64位的Window、Linux和Mac OS

1.** NW.js(**:)

这里面normal这个算是运行时吧,sdk那个是一些工具箱,建议都下下来~

2.** Enigma Virtual Box(**:)

"description":"使用nw.js封装的一个微信公众号菜单编辑器App",

"keywords": ["微信","菜单编辑器" ],

"icon":"app/static/img/weixin_logo.jpg",

"chromium-args":"-allow-file-access-from-files"

}title:字符串,设置默认 title。

toolbar: bool值。是否显示导航栏。

position:字符串。窗口打开时的位置,可以设置为“null”、“center”或者“mouse”。

min_width/min_height:窗口的小值。

max_width/max_height:窗口显示的大值。

resizable: bool值。是否允许调整窗口大小。

always-on-top: bool值。窗口置顶。

fullscreen: bool值。是否全屏显示。

show_in_taskbar:是否在任务栏显示图标。

frame: bool值。如果设置为 false,程序将无边框显示。

"chromium-args":"-allow-file-access-from-files"相当于给谷歌浏览器添加启动参数一样,这行代码允许angularjs直接访问本地json文件。

将html项目压缩成zip,并改名为nw,输入以下命令

copy/b nw.exe+app.nw firstApp.exe四、打发包发布

打开 Enigma Virtual Box程序(enigmavb.exe),界面应该是这样的:

然后在 Enter Input File Name处选择上一步生成的 test.exe文件,Enter Output Name可以默认;

之后再点击下面的 Add按钮,将 nwjs文件夹(名称不一定是 nwjs,就是开始第一步 NW.js环境的那个文件夹)下除 nw.exe和 test.nw以及 test.exe之外的所有文件加载上,然后点击 Process,等待执行成功即可,这时候会在相应的路径下生成一个新的.exe文件(我们暂且叫做 newtest.exe),此时的 newtest.exe文件即可在任意的 Windows环境下运行了,你可以拷贝给你的小伙伴去 Show一下。

1.如果只希望当前应用获取焦点才执行快捷键,看看这个库用js设置快捷键

var gui= require('nw.gui');

alert("全局快捷键"+ this.key+"按下");

var shortcut= new gui.Shortcut(option);

gui.App.registerGlobalHotKey(shortcut);

//解除注册,在应用结束的时候执行

gui.App.unregisterGlobalHotKey(shortcut);2.nw.js不能对页面多次刷新,各种不正常,这是由于刷新页面后重新加载js文件对变量重新赋值引起的bug。解决方案

<title>nw.js实现文件读写</title>

<input id="readFile" type="file">读取文件</input>

<!--默认文件名为filename.html-->

<input id="writeFile" nwsaveas="filename.html" type="file">保存文件</input>

var chooser= document.querySelector('#readFile');

chooser.addEventListener("change", function(evt){

var filePath= this.value.toString();

document.querySelector("p").innerHTML="读取文件从"+ filePath;

fs.readFile(filePath, function(err, data){

layer.msg("读取文件失败!:"+ err.message);

chooser= document.querySelector('#writeFile');

chooser.addEventListener("change", function(evt){

var filePath= this.value.toString();

document.querySelector("p").innerHTML="写入文件到:"+ filePath;

fs.writeFile(filePath,"Hello!\n", function(err){

</html>3.使用nwjs的'fs'直接保存cancas为本地图片,在网上找到的方法都是弹出选择框保存,但我需要直接保存图片到指定路径,不能弹出对话框让用户选择。kailniris给了一个解决方案,可行,代码如下:

var fs= require('fs');

var c= document.getElementById("myCanvas");

<canvas id="myCanvas" width="200" height="100" style="border:1px solid#000000;">

base64Data= c.toDataURL("image/png").replace(/^data:image\/png;base64,/,"")

fs.writeFile("c:/Dev/test.png", base64Data,'base64', function(err){

return res.json({'status':'success'});

});用html2canvas把html页面转换为图片,再把图片保存到本地。贴一下代码(需要导入html2canvas.js和jquery):

var filePath= templateDir+ filename+'.html';

var editerDocument= window.editor.edit.iframe.get().contentWindow.document;

html2canvas(editerDocument.body,{

onrendered: function(canvas){

var base64Data= canvas.toDataURL("image/png").replace(/^data:image\/png;base64,/,"")

fs.writeFile(templateDir+ filename+'.png', base64Data,'base64', function(err){

$('#model_template_name').modal("hide");

layer.msg("模板已保存为"+ filename);

});4.在app.js里引用Node内置模块

$scope.fs= require('fs');

$scope.readConfig= function(){

var configStr=$scope.fs.readFileSync(config.weixin.path,'utf8');

var obj= eval('('+ configStr+')');

$scope.weixin.appid= obj.appid;

$scope.weixin.appsecret= obj.appsecret;

$scope.weixin.qrcodeurl= obj.qrcodeurl;

alert("读取微信配置文件失败");

$scope.writeConfig= function(){

var configStr= JSON.stringify($scope.weixin);

$scope.fs.writeFileSync(config.weixin.path, configStr,{encoding:'utf8'});

alert("写入微信配置文件失败");

$scope.wechatApi= require('wechat-api');

var api= new$scope.wechatApi($scope.weixin.appid,$scope.weixin.appsecret);

api.getMenu(function(err, result){

$scope.$apply();//需要手动刷新

相关文章

小米(MI)电视40英寸EA40金属全面屏内置小爱蓝牙语音遥控全高清智能液晶平板电视小米电视EA43英寸【蓝牙语音】使用心得反馈

小米(MI)电视40英寸EA40金属全面屏内置小爱蓝牙语音遥控全高清智能液晶平板电视小米电视EA43英寸【蓝牙语音】使用心得反馈

很多小伙伴在关注小米(MI)电视40英寸EA40金属全面屏内置小爱蓝牙语音遥控全高清智能液晶平板电视小米电视EA43英寸【蓝牙语音】怎么样?质量好不好?使用测评如何?本文综...

小米电视ES系列质量好不好

小米电视ES系列质量好不好

很多小伙伴在关注小米电视ES系列怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

创维电视65M365英寸4K超高清超薄护眼使用反馈分享

创维电视65M365英寸4K超高清超薄护眼使用反馈分享

很多小伙伴在关注创维电视65M365英寸4K超高清超薄护眼怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一...

小米(MI)小米电视55英寸怎么样

小米(MI)小米电视55英寸怎么样

很多小伙伴在关注小米(MI)小米电视55英寸怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...

Camorama凯眸4K全景运动摄像机车载支架测评怎么样

Camorama凯眸4K全景运动摄像机车载支架测评怎么样

很多小伙伴在关注Camorama凯眸4K全景运动摄像机车载支架怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品...

zeiss蔡司镜头清洁测评怎么样

zeiss蔡司镜头清洁测评怎么样

很多小伙伴在关注zeiss蔡司镜头清洁怎么样?质量好不好?使用测评如何?本文综合已购用户的客观使用分享和相应的优惠信息,为大家推荐一款高性价比的产品,一起来看看吧。...