Quantcast
Channel: CNode:Node.js专业中文社区
Viewing all 14821 articles
Browse latest View live

TS2350: Only a void function can be called with the 'new' keyword.

$
0
0
const AfterdoSchema = new mongoose.Schema({
    monitorpoint:{
        type: String
    },
    rectime:{
        type: Date,
        default: Date.now()
    },
   latitude:{
        type: Number
    },
    longitude:{
        type: Number 
    },
   height:{
        type: Number
    },
    status:{
        type: String,
        default: ''
    }
})

代码如上。TS2350: Only a void function can be called with the ‘new’ keyword.这个错误该如何解决?thx~


nodejs程序如何用node-fetch如何下载文件保存到指定路径

$
0
0

nodejs程序如何用node-fetch如何下载文件保存到指定路径

[深圳] 迅雷前端招聘 Node.js工程师和前端高级工程师

$
0
0

Node.js高级工程师

职位诱惑:

  1. 早晚餐、无限量饮料、班车;
  2. 亿级用户平台、有技术追求的团队。用平台磨练技术,用技术创造价值;

职位描述:

迅雷下载PC、MAC等业务WEB端服务的设计和开发,服务亿万用户;

任职要求:

  1. 3年以上Node.js开发工作经验,熟悉Linux环境的开发与调优,熟悉Linux的进程与网络知识;
  2. 熟练掌握ES5、ES6语言标准,驾驭Javascript异步编程;
  3. 熟悉NPM生态与各种设计模式、Node.js框架,能独立评估技术方案完成设计与开发;
  4. 熟悉HTTP、TCP等网络协议标准及通信原理,能利用协议特性对应用性能进行优化;
  5. 熟练使用Mysql、Redis、MongoDB等数据库,设计合理的表、数据模式、熟悉索引原理;
  6. 有Express、Koa等框架项目开发经验,阅读过框架代码、熟悉内部实现;
  7. git、npm、CI等工具链,熟悉敏捷开发、监控预警、自动化测试、发布;
  8. 热爱技术,精益求精,自我驱动;

工作地址

深圳 - 南山区 - 科技园 - 科技园科技中二路软件园二期11栋7楼

前端高级工程师

岗位职责:

1.为核心移动端应用设计、编写iOS、Android高效迭代、优秀体验的Hybrid方案; 2.为团队积累和分享最佳开发实践/流程和工具;

任职要求:

1.5年以上前端开发经验(能力突出者可不受此限制); 2.精通JS语言各标准,对HTTP协议有自己的见解,熟悉W3C标准及规范,了解WebView渲染原理、熟悉业内的优化方案; 3.精通HTML、CSS、HTML5、CSS3,熟悉不同WebView环境的兼容性、性能等差异; 4.熟悉ReactNative、Weex任一框架,有成功上线的Hybrid应用开发经验; 5.熟悉webpack、gulp、git等工具链,对于开发流程自动化有实际应用经验; 6.熟悉NodeJS; 7.有技术博客、GitHub开源项目为加分项;

工作地址

深圳 - 南山区 - 科技园 - 科技园科技中二路软件园二期11栋7楼

其它信息

[成都]乐车邦招聘前端工程师

$
0
0

职责描述

使用各种前端技术开发乐车邦各种NB的模块, https://m.lechebang.com, 大部分是移动端技术

团队环境

  1. 快速找到适合公司业务的前端技术环境
  2. 使用各种混合技术来开发app
  3. 各个成员积极向上,满满的正能量

任职要求

  1. JavaScript基础知识牢固就行
  2. 懂得基本的html + css语法即可
  3. 有github地址的最好
  4. 两年以上前端工作经验, 或者 刚毕业不久,大学比较好,一点即通的人

工作地点

成都市蜀西路58号精城国际1栋610乐车邦

薪资水平

8K-13K

联系方式

liaowei@lechebang.com

关于用Express中间件去请求微信access_token和ticket时,第二次请求发不出去

$
0
0

当在做微信开发时,我分别写了两个中间件。

// 中间件 middleware1 发送请求获取access_token
	// 中间件 middleware2 发送请求获取ticket
	router.get('/weixin', middleware1, middleware2, function(){req, res} {
		// 其他
	})

中间件分别将请求获得的文件保存在本地。

遇到的问题当accesstoken不存在的时候或者过期的时候,中间件miaddleware1 中间件middleware2的请求无法发出。当accesstoken存在时,middleware1不发送请求了,middleware2才能发送请求。

疑惑:中间件1中有文件读写操作,把中间件1中的文件读写操作注释掉以后,中间件2的请求就能发送成功了。。

使用tmpfs加速前端构建

$
0
0

tmpfs前端引入的构建需要处理大量读写脚本、工程文件的读写,常见的磁盘IO速度决定了编译速度的快慢。在一个典型的编译环境下面,基于webpack的打包可能会占据到20秒甚至更多,对于频繁更新打包的项目,这里节省的时候就比较可贵了,开发环境可以应用watch选项完成增量的打包,对于发布环境等全量打包环境,对于*inux系统下面的同学,可以借助tmpfs可以使用最低的成本完成速度的提升。

tmpfs在类Unix操作系统上是一个常见的名称会用来做为暂时的文件存储方式,在更多的情况下,它会用虚拟的内存而不是一个永久保存的媒体来做为在文件系统上的使用。所有在tmpfs上存储的数据在理论上都是暂时借放的,那也表示说,文件不会创建在硬盘上面。一旦重启,所有在tmpfs里面的数据都会消失不见。理论上,内存使用量会随着tmpfs的使用而时有增长或消减。维基百科词条

创建tmpfs分区

mkdir -p /data/dev/;
mount -t tmpfs -o size=1G,nr_inodes=10k,mode=0700 tmpfs /data/dev/;

调整tmpfs分区

mount -o remount,size=2G,nr_inodes=100k /data/dev

创建完tmpfs目录后,可以使用linux的文件系统相关命令,mount -l查看当前的磁盘挂载情况; 使用df -li可以看inode的使用情况,df -lh查看磁盘的空间使用情况。

磁盘写入测试对比

ssd磁盘写入速度

[root@localhost test]# time dd if=/dev/zero of=test.dbf bs=8k count=100000  conv=fsync
100000+0 records in
100000+0 records out
819200000 bytes (819 MB) copied, 5.91981 s, 138 MB/s
real	0m5.934s
user	0m0.047s
sys	0m2.645s

tmpfs写入速度

[root@localhost test]# time dd if=/dev/zero of=test.dbf bs=8k count=100000  conv=fsync
100000+0 records in
100000+0 records out
819200000 bytes (819 MB) copied, 2.01675 s, 406 MB/s
real	0m2.030s
user	0m0.011s
sys	0m0.633s

webpack打包速度对比

ssd磁盘webpack

[root@localhost wjgl-xlmc-xunlei-com]# gulp webpack
[21:07:23] Using gulpfile /data/vhosts/xunlei.com/wjgl-xlmc-xunlei-com/gulpfile.js
[21:07:23] Starting 'webpack'...
[21:07:45] Finished 'webpack' after 21 s

tmpfs磁盘webpack

[root@localhost wjgl-xlmc-xunlei-com]# gulp webpack
[21:05:33] Using gulpfile /data/dev/wjgl-xlmc-xunlei-com/gulpfile.js
[21:05:33] Starting 'webpack'...
[21:05:34] Finished 'webpack' after 1.29 s

性能提升16倍

插入广告分割线

迅雷前端在寻找Node.js和前端开发同事,有兴趣的同学可以投入简历过来,招聘详情描述见招聘详情

  • 邮箱:liaoweiqiang@xunlei.com
  • 微信:hellolwq

说实话,请问node神坑如何填满?(我要讲给朴灵听)

$
0
0

说几句朴灵说过的话: node肯定是几个前端工程师在实验室里鼓捣出来的(认同) 为了后端而后端,有意思吗?(非常认同) 怎么又发明了一门新语言?(现在来说不新了…) JavaScript承担的责任太重了(额…这是必然) 直觉上,JavaScript不应该运行在后端(那可不,这是前端语言啊!) 前端工程师要逆袭了(我靠,刚刚完成逆袭,很准的语言啊)

请问Node.js如何接收软件外部穿过来的信息呢?

$
0
0

用Node与electron写了一个类似于“百度网盘”的应用,在桌面右键点击文件,“上传到网盘”,会向应用传递一串信息,请问怎么在应用中用Node接受信息呢


nodejs express框架实现api访问限速

nodejs 如何安装node-oracle [包含window和linux教程]

关于webapp性能对比的问题

$
0
0

各位仁兄,ionic ,react-native,weex 和 apicloud,各有什么优缺点?性能对比如何

pm2-logrotate 好吃内存啊。

$
0
0
┌─────────────────────────┬────┬──────┬───────┬────────┬─────────┬────────┬─────┬───────────┬──────────┐
│ App name                │ id │ mode │ pid   │ status │ restart │ uptime │ cpu │ mem       │ watching │
├─────────────────────────┼────┼──────┼───────┼────────┼─────────┼────────┼─────┼───────────┼──────────┤
│ xxx │ 0  │ fork │ 29556 │ online │ 9       │ 7D     │ 0%  │ 83.0 MB   │ disabled │
└─────────────────────────┴────┴──────┴───────┴────────┴─────────┴────────┴─────┴───────────┴──────────┘
 Module activated
┌───────────────┬─────────┬────────────┬────────┬─────────┬─────┬──────────────┐
│ Module        │ version │ target PID │ status │ restart │ cpu │ memory       │
├───────────────┼─────────┼────────────┼────────┼─────────┼─────┼──────────────┤
│ pm2-logrotate │ 2.2.0   │ N/A        │ online │ 9       │ 0%  │ 274.090 MB   │
└───────────────┴─────────┴────────────┴────────┴─────────┴─────┴──────────────┘

比我的业务项目内存还吃得多。。这个正常么

[北京] Wecash闪银招聘nodejs工程师(数据分析方向)(10k-25k)

$
0
0

公司介绍

Wecash闪银是中国首家互联网信用评估平台,依托数据挖掘分析和机器学习技术,实现快速精准的信用评估。基于该评估结果,撮合个人用户和机构快速完成交易,帮助个人享受到更便捷的资金借贷、消费分期等金融服务,以及租车、租房、旅游、教育等生活服务。截至2017年4月,闪银已拥有超过8000万用户量,公司先后获得IDG 660万美金A轮投资,SIG 2000万美金B轮投资,以及招商局、SIG、光远资本等领投的8000万美金C轮投资,总融资金额过亿美金。

工作职责

  1. 维护现有互联网垂直数据采集程序,保证数据的不断更新。
  2. 持续分析数据的价值,开发各种数据服务,服务千万级用户。
  3. 优化项目代码、改进框架以支持更高并发、更稳定的体系结构。
  4. 监控数据,开发大规模实时数据分析程序,改进数据可视化程序。

岗位要求

  1. 热爱技术,对数据相关方向感兴趣
  2. 熟练的编程技巧,掌握一门语言的编程开发、构建测试、部署优化。
  3. 全面的基础知识,对计算机网络,操作系统,数据库等有足够的储备。
  4. 良好的沟通能力,有分享精神,做事谨慎认真,有责任心。

加分项

  1. 某方面的技术专家
  2. 有自己长时间积累的博客和开源项目
  3. 有相关职位、相关行业工作经验优先

联系方式

值得关注的 eggjs 动态 03 期

$
0
0

image.png

eggjs-feed 系列期刊,用于汇总近期值得关注的 egg 相关动态,将不定期发布。 原文来自知乎专栏:https://zhuanlan.zhihu.com/p/25457918

TOC:

  • 精彩讨论
  • 文档更新 && 导读
  • 值得关注的 Node.js 社区动态

Egg Star 破 4k 啦!!!

Egg Star 破 4k 啦!!!

Egg Star 破 4k 啦!!!

你不来一发么?https://github.com/eggjs/egg


精彩讨论

在 eggjs 团队的日常协作中,遵循「基于 GitLab 的硬盘式异步协作模式」。 通过 issue 发起 RFC 提案 -> 讨论定稿-> 提交 Pull Request -> Code Review -> 发布。 这样便于沉淀,即使是当时没有参与讨论的开发者,事后也能通过 issue 了解某个功能设计的前因后果。

Θ 子进程的优雅退出 - 再次完善

背景: 在做 egg-cluster 的时候,app worker 是由 cluster fork 出来的,然而 agent worker 是 master 通过 child_process.fork 出来的。他们两者之间在 master 正常退出的情况下,没太大区别。但是在 master 意外被强杀,如 kill -9杀掉,那么 app worker 还是会优雅退出,但是 agent worker 却变成了孤儿进程。 我们发现,通过 child_process fork 出来的子进程,如果需要实现父进程挂了子进程也跟着挂,必须在子进程里面也加上相应的处理才能实现,没办法只通过父进程来实现。

于是我们将该解决方案沉淀到一个 graceful-process模块,只需要在子进程代码里面执行一下优雅退出逻辑即可。 http://github.com/eggjs/egg-cluster/pull/27

Θ 断点调试插件

在本地断点时,经常遇到的一个痛点就是修改后重启的 worker 的 debugPort 变了,@仙森(黄朝桂) 同学为此专门写了个 egg-development-proxyworker插件,配合 vscode / atom 调试非常方便。

Θ egg-bin 覆盖率工具替换为 nyc

egg-bin@4.x把内置的覆盖率工具 istanbul替换为 nyc,多进程覆盖率的测试速度提升了几倍。都是同一作者的作品,后者目前活跃度高,并支持前端很多新特性。

测试命令行的时候,可以用我们的 coffee和 egg-bin,具体可以参见 egg-bin 本身的测试。

Θ Egg 正在逐步支持 TypeScript

感谢 @宋爱华,目前 Egg 已经开始陆续支持 TS,https://github.com/eggjs/egg/pull/1027,欢迎大家一起参与完善。

Θ 再次宣告,Egg 从 1.0 版本开始早就已经支持 Async Await

直到现在,还是很多同学以为 Egg 不支持 Async,其实早在 1.0 版时,你只需要 Node 7.6+ 以上版本,即可在 Egg 里面使用。

作为应用开发者,并不需要关注 Egg 底层,我们兼容了 Koa 1.x 和 2.x 的中间件,可以放心的复用 Koa 社区生态。

具体参见文档 - 『使用 async function 开发应用』。

Θ 插件理念进化

在实践中,我们发现很多情况下,一些功能是具备很大共性,但又需要支持不同策略的,于是我们在以下插件中做了一些抽象和实践:

简单的说,主插件负责通用逻辑和流程的处理,二级策略插件用于根据业务场景选择挂载。

文档

对于开源项目来说,文档是非常重要的。虽然我们姗姗来迟,但我们诚意十足。 egg 的文档汇集了很多我们在企业级应用中沉淀下来的框架设计思路,即使你不用 egg,也可以借鉴参考下。

有多位同学参与了我们的文档中译英,非常感谢。目前还未全部完成,我们需要你的帮助,如果有兴趣请访问:https://github.com/eggjs/egg/issues/363

值得关注的社区动态

  • @高皓亮 造的新轮子 pkgfiles用于避免 npm publish 遗漏文件,已集成到 egg-bin 。

node_modules目录下以下划线_开头的目录是什么?

$
0
0

微信截图_20170627212039.png

如上图,除了正常的package目录外多了上面以下划线开头的目录?

除了上面的问题我还有一些疑问:

  • .bin目录中的可执行程序是怎么生成的?在什么时候会用到?
  • 在第一次npm install安装所有包后,有没有存入npm_cache?第二次npm install会以怎样的逻辑运行?

mongodb 设置系统服务 没有反应,也没有错误代码?

$
0
0

H:\program Files\MongoDB\bin>mongod --dbpath=H:/data/db --logpath=H:/data/log/mongodb.log --logappend --auth --serviceName MongoDB --install --serviceDisplayName MongoDB

H:\program Files\MongoDB\bin> 程序没有任何显示上面情况啊?????

请问如何阅读node api源码

$
0
0

想阅读nodejs api的源码。非实现node源码。。 请问有人阅读过并且有整合,带带路子上路吗 或者推荐一个阅读顺序之类的。 拜谢

node 8.0 为什么还是识别不了es6的 import/export

关于 jquery

$
0
0

最近在学习jquery,想问平时项目中这个用的多吗?都用在哪些方面呢?

[北京朝阳]诚聘Node组长,待遇15-20K,初创公司、前景一片美好!更有股权激励等你来拿!!!

$
0
0

工作地点:北京朝阳亚运村亚奥观典 公司名字:北京职场人生网络科技有限公司 公司技术跟产品:

随着互联网的飞速发展,市场对云技术、移动互联、大数据这些概念都有了更多的关注,如何把它们有效运用到学校之中,是许多校长正在探索的课题。 职业人是全国首家“云端一体”移动职业教育云服务平台,利用无所不在的云服务技术,结合学生使用的手机客户端,将学生日常的活动行为数据记录下来,从而形成全国范围的大数据,从“云”和“端”两个方向向学校提供大数据云计算及移动互联网服务,可以帮助学校加速移动创新、从传统架构成功转向移动互联、快速进入云管理和大数据时代。 yunapi.png端API 端API即职业人跨平台APP引擎,能够支持学校实现优质体验的管理,以及完善教学的终端适配,尽可能的短平快管理,简单又跨平台的操作方式……这些几乎成为了教育者实现移动化的理想状态,这一切通过职业人“端API”服务都可以实现。 “端API”将大量移动教育应用所需的功能“模块化”封装,并且借助职业人的模块机制规范的提供给学校,通过使用平台,简单的拖拖拽拽的操作调用模块,从而实现“积木拼装”式的应用创建;支持多人协作管理、一键多终端使用等服务。同时支持学校扩展自定义模块,让学校管理应用更具灵活性和个性化。 为学校提供大量优质的模块,涵盖班级管理、社团活动、智能校园、移动办公、招生、校友会等类型。 云API 职业人的“云API”规划的初衷是为了学校只需要少量的成本,就可以使用移动应用所需要的各种云服务接口。“云API”服务包括数据服务、统计、VR教学、职业资源、教育培训、毕业跟踪等。 职业人的数据服务支持自动生成RESTful API,在移动场景中为APP提供灵活的数据服务支持。同时大量第三方合作伙伴为职业人的大数据提供了充分支撑。职业人的“云API”提供基于ACL(Access Control List)和RBAC (Role Based Access Control)的访问控制模型安全机制,让学校的移动应用在业务灵活性和安全性中找到平衡。 职业人的“云API”具有典型的“云”特性和“大数据”特性。 为学校提供云端的API服务和数据存储服务,动态生成RESTful API,支持在线资源的上传、下载及用量分析;同时提供大数据分析等服务,极大的简化了学校的综合工作。

现阶段:推出1.0版本,app store:https://itunes.apple.com/cn/app/职业人/id1163449070?l=zh&ls=1&mt=8技能的要求, 工作内容:负责Node后端架构,负责后续的新需求迭代及更新,架构可重构 工作待遇:15-20K 联系方式:QQ:369863654 TEL:18211012780

Viewing all 14821 articles
Browse latest View live