当前位置: 首页 > news >正文

手机网站源码大全北京网站制作郑州

手机网站源码大全,北京网站制作郑州,肇庆建网站服务,湖南旅游十大必去景区本文主要是小程序使用PB协议,以下时博主遇到的问题以及解决办法。 1、安装protobufjs npm install --save protobufjs 注意:我之前也使用过 npm install -g protobufjs去安装,但是出现以下的问题,关键是我使用sudo 清除相关文件…

本文主要是小程序使用PB协议,以下时博主遇到的问题以及解决办法。

1、安装protobufjs

npm install --save protobufjs

注意:我之前也使用过 npm install -g protobufjs去安装,但是出现以下的问题,关键是我使用sudo 清除相关文件之后还是有问题,心累啊!!!!

npm ERR! code EACCES
npm ERR! syscall mkdir
npm ERR! path /usr/local/lib/node_modules/protobufjs
npm ERR! errno -13
npm ERR! Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/protobufjs'
npm ERR!  [Error: EACCES: permission denied, mkdir '/usr/local/lib/node_modules/protobufjs'] {
npm ERR!   errno: -13,
npm ERR!   code: 'EACCES',
npm ERR!   syscall: 'mkdir',
npm ERR!   path: '/usr/local/lib/node_modules/protobufjs'
npm ERR! }
npm ERR! 
npm ERR! The operation was rejected by your operating system.
npm ERR! It is likely you do not have the permissions to access this file as the current user
npm ERR! 
npm ERR! If you believe this might be a permissions issue, please double-check the
npm ERR! permissions of the file and its containing directories, or try running
npm ERR! the command again as root/Administrator.

遇到以上的报错信息运行,强制清楚

sudo chown -R $(whoami) $(npm config get prefix)/{lib/node_modules,bin,share}

之后再安装即可

2、查看是否安装成功

npm list protobufjs

运行命令,之后查看protobufjs版本号,出现版本信息即为安装成功

3、运行pbjs

protobufjs安装成功之后,运行pbjs,结果出现command not found: pbjs,然后大家可以试一下

npx pbjs

然后会出现,哇哦,我总遇看到了胜利的希望,感恩啊!!!!!

Translates between file formats and generates static code.-t, --target     Specifies the target format. Also accepts a path to require a custom target.json          JSON representationjson-module   JSON representation as a moduleproto2        Protocol Buffers, Version 2proto3        Protocol Buffers, Version 3static        Static code without reflection (non-functional on its own)static-module Static code without reflection as a module-p, --path       Adds a directory to the include path.-o, --out        Saves to a file instead of writing to stdout.--sparse         Exports only those types referenced from a main file (experimental).Module targets only:-w, --wrap       Specifies the wrapper to use. Also accepts a path to require a custom wrapper.default   Default wrapper supporting both CommonJS and AMDcommonjs  CommonJS wrapperamd       AMD wrapperes6       ES6 wrapper (implies --es6)closure   A closure adding to protobuf.roots where protobuf is a global--dependency     Specifies which version of protobuf to require. Accepts any valid module id-r, --root       Specifies an alternative protobuf.roots name.-l, --lint       Linter configuration. Defaults to protobuf.js-compatible rules:eslint-disable block-scoped-var, id-length, no-control-regex, no-magic-numbers, no-prototype-builtins, no-redeclare, no-shadow, no-var, sort-vars--es6            Enables ES6 syntax (const/let instead of var)Proto sources only:--keep-case      Keeps field casing instead of converting to camel case.Static targets only:--no-create      Does not generate create functions used for reflection compatibility.--no-encode      Does not generate encode functions.--no-decode      Does not generate decode functions.--no-verify      Does not generate verify functions.--no-convert     Does not generate convert functions like from/toObject--no-delimited   Does not generate delimited encode/decode functions.--no-beautify    Does not beautify generated code.--no-comments    Does not output any JSDoc comments.--force-long     Enfores the use of 'Long' for s-/u-/int64 and s-/fixed64 fields.--force-number   Enfores the use of 'number' for s-/u-/int64 and s-/fixed64 fields.--force-message  Enfores the use of message instances instead of plain objects.usage: pbjs [options] file1.proto file2.json ...  (or pipe)  other | pbjs [options] -

4、使用pbjs 转换一下.proto文件

最后一步来啦,这里需要注意一下,如果你的.proto没有放到根目录的时候,需要找到相对应的文件夹在运行,如果.proto在根目录直接运行即可

npx pbjs -t json awesome.proto > awesome.json
 // awesome.protosyntax = "proto3";message AwesomeMessage {string awesome_field = 1; // becomes awesomeField}

然后你就会发现得到一个awesome.json文件,

 {"nested": {"AwesomeMessage": {"fields": {"awesomeField": {"type": "string","id": 1}}}}}

但此时的json文件我们不能直接使用,不过我们可以将json对象取出放到小程序项目当中去,比如在小程序项目中新建一个awesome.js,内容为

 module.exports = {"nested": {"AwesomeMessage": {"fields": {"awesomeField": {"type": "string","id": 1}}}}};

然后,大功告成,总于可以愉快的使用protobufjs 啦。最后,如果.proto文件内容更新,需要重复步骤四更新js文件哦

http://www.yayakq.cn/news/941164/

相关文章:

  • 做现货黄金看什么网站小型公司怎么注册
  • 小企业网站建设地点手机算命网站建设
  • 单页网站上传教程视频网站重新搭建程序要多少钱
  • 美橙互联网站建设案例淘宝官网首页入口手机
  • iis怎么创建网站横岗网站建设
  • 北京高端品牌网站建设找人做网站需要什么条件
  • 教做高级料理的网站建设工程服务中心是做什么的
  • 自适应模板网站郑州网络营销策划
  • 天津网站优化首页国外常用的seo站长工具
  • 网站内容好wordpress数据存储
  • 做评测系统网站首先要干嘛wordpress 个人中心
  • 做门户网站需要学什么软件58同城东莞招聘网最新招聘
  • 做最便宜的网站建设北京定制网站价格
  • wordpress 移动 建站学设计的学校
  • 西安网站设计公司排名ppt做的好的网站有哪些内容
  • 佛山设计网站招远网站建设招聘
  • 微信微网站模板蒙古文网站建设的通知
  • 章贡区网站建设怀化网站推广
  • 内丘网站建设做网站有钱
  • 易雅达网站建设公司江西省网站开发
  • 哪个素材网站比较好用wordpress 目录模板
  • 电商公司网站建设财务核算wordpress 数据导出
  • 怎样自己做刷赞网站php如何做音乐网站
  • 网站建设服务器什么意思电子书网站用dz还是wordpress
  • 网站图片模板精准营销推广策略
  • 网站建设专业就业前景广州网站制作哪家强
  • 个人网站快速备案宝安三网合一网站建设
  • 什么网站可以做外链专门做店面装修设计的网站
  • 天津seo公司网站中国机械加工网站
  • 学工系统网站建设的意义网站建设方案ppt模板