博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
拥抱_Node.js_8.0_N-API_入门极简例子
阅读量:2354 次
发布时间:2019-05-10

本文共 713 字,大约阅读时间需要 2 分钟。

本文摘录自《Nodejs学习笔记》,更多章节及更新,请访问 。欢迎加群交流,群号 。

N-API简介

Node.js 8.0 在2017年6月份发布,升级的特性中,包含了N-API。编写过或者使用过 node扩展的同学,不少都遇到过升级node版本,node扩展编译失败的情况。因为node扩展严重依赖于V8暴露的API,而node不同版本依赖的V8版本可能不同,一旦升级node版本,原先运行正常的node扩展就编译失败了。

这种情况对node生态圈无疑是不利的,N-API的引入正是试图改善这种情况的一种尝试。它跟底层JS引擎无关,只要N-API暴露的API足够稳定,那么node扩展的编写者就不用过分担忧node的升级问题。

如何使用N-API

先强调一点,N-API并不是对原有node扩展实现方式的替代,它只是提供了一系列底层无关的API,来帮助开发者编写跨版本的node扩展。至于如何编写、编译、使用扩展,跟原来的差不多。

本文会从一个超级简单的例子,简单介绍N-API的使用,包括环境准备、编写扩展、编译、运行几个步骤。

备注:当前N-API还处于试验阶段,官方文档提供的例子都是有问题的,如用于生产环境需格外谨慎。

1、环境准备

首先,N-API是8.0版本引入的,首先确保本地安装了8.0版本。笔者用的是nvm,读者可自行选择安装方式。

nvm i 8.0nvm use 8.0

然后,安装node-gyp,编译扩展会用到。

npm install -g node-gyp

创建项目目录,并初始化package.json

mkdir hello & cd hello # 目录名随便起npm init -f

转载地址:http://rbktb.baihongyu.com/

你可能感兴趣的文章
应用市场
查看>>
iOS审核马甲包被拒4.3的解决方案
查看>>
c++的一点小总结
查看>>
来源于 一般提问 分类 关于tableViewcell中套collectionview 崩溃
查看>>
微信着手封堵 Universal Link
查看>>
Universal Link 前端部署采坑记
查看>>
iOS动态改变UITableView的tableViewHeader的高度
查看>>
iOS tableHeaderView的那些坑
查看>>
VI模式下实现多行注释
查看>>
一点小总结
查看>>
IOS程序中发送短信
查看>>
关于FMDB的一些用法,FMDatabaseQueue用法 添加字段
查看>>
FMDB数据库升级——增加表字段
查看>>
Asihttprequest上传文件到 appache服务器,脚本语言php(服务器端),客户端iphone oc
查看>>
从UIWebView中调用iOS相册,并选择图片上传到Linux Web服务器。
查看>>
#if 和 #ifdef的区别
查看>>
Application uses Wi-Fi
查看>>
iOS 单例的销毁
查看>>
git reflog
查看>>
UNBUNTU 下修改VIM支持C程序设计
查看>>