From af8fd000f84a79aefaf2a0baebd4fb42d6b47f35 Mon Sep 17 00:00:00 2001 From: gou-jingjing Date: Mon, 15 Jul 2024 16:06:40 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8Dh2dtscpp=E5=B7=A5=E5=85=B7rea?= =?UTF-8?q?dme=E9=94=99=E8=AF=AF=E6=8F=8F=E8=BF=B0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: gou-jingjing --- src/cli/h2dtscpp/h2dtscpp_README_ZH.md | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/src/cli/h2dtscpp/h2dtscpp_README_ZH.md b/src/cli/h2dtscpp/h2dtscpp_README_ZH.md index cd14bb49..118944aa 100644 --- a/src/cli/h2dtscpp/h2dtscpp_README_ZH.md +++ b/src/cli/h2dtscpp/h2dtscpp_README_ZH.md @@ -2,7 +2,7 @@ ## 简介 -h2dtscpp工具即NATIVE生成工具,该工具由C++语法解释器和代码生成器两部分组成。C++语法解释器解析用户输入的.h文件内容,通过C++语法解析,将文件内容分解为类、方法、入参、成员属性等元素;代码生成器根据从语法解析器得到的这些元素,转换为对应的typescript语法的接口、方法、参数代码,生成.ts文件内容;同时通过语法解析器得到的元素,生成.h文件对应的napi框架代码和接口调用测试代码。 +h2dtscpp工具由C++语法解释器和代码生成器两部分组成。C++语法解释器解析用户输入的.h文件内容,通过C++语法解析,将文件内容分解为类、方法、入参、成员属性等元素;代码生成器根据从语法解析器得到的这些元素,转换为对应的typescript语法的接口、方法、参数代码,生成.ts文件内容;同时通过语法解析器得到的元素,生成.h文件对应的napi框架代码和接口调用测试代码。 ## 约束 @@ -20,12 +20,14 @@ h2dtscpp工具即NATIVE生成工具,该工具由C++语法解释器和代码生 npm i stdio -3.将待转换的.h文件拷贝到napi_generator/src/cli/h2dtscpp/src下,如 [cJSON测试三方库](https://gitee.com/openharmony/napi_generator/releases/tag/测试用资源) 的cJSON.h,并新建out目录。 +3.下载header_parser.exe文件:[header_parser.exe](https://gitee.com/openharmony/napi_generator/releases/tag/生成工具);选择 tool.rar下载并解压,将解压后的文件中的header_parser.exe拷贝到拷贝到node Js执行路径下(如C:\software\nodeJs) -4.在napi_generator/src/cli/h2dtscpp/src执行以下命令: +4.将待转换的.h文件拷贝到napi_generator/src/cli/h2dtscpp/src下,如 [cJSON测试三方库](https://gitee.com/openharmony/napi_generator/releases/tag/测试用资源) 的cJSON.h。 + +5.在napi_generator/src/cli/h2dtscpp/src执行以下命令: ``` -node src\main.js -f cJSON.h -o out +node src\main.js -f cJSON.h ``` 其中,参数详情如下: @@ -40,7 +42,7 @@ index.d.ts文件路径; -o, 可选参数,生成的.cpp文件所在路径,默认路径为.h文件目录下创建的cppout文件夹路径; -5.执行成功后在out目录下生成以下文件夹 +6.执行成功后在napi_generator/src/cli/h2dtscpp/src目录下生成以下文件夹 ![](./docs/figures/h2dtscpp_out_example.png)