日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

圖文詳解vue中proto文件的函數(shù)調(diào)用

瀏覽:109日期:2023-02-10 18:17:12
1、編譯proto

在src文件夾下新建proto文件夾用以存放所有的.proto文件。在proto文件夾下打開終端,輸入如下命令:

//進(jìn)入proto文件夾執(zhí)行下列編譯,將helloworld.proto替換為當(dāng)前的.proto文件名protoc -I=. helloworld.proto --js_out=import_style=commonjs,binary:. --grpc-web_out=import_style=commonjs,mode=grpcwebtext:.

一個(gè).proto文件(helloworld.proto)編譯后生成2個(gè)js文件:

helloworld_pb.js helloworld_grpc_web_pb.js2、編譯后的proto文件中變量及函數(shù)

.proto中函數(shù)的結(jié)構(gòu),主要由函數(shù)及參數(shù)2部分組成:

service Greeter{ rpc AddEmployee(Employee) returns (EmployeeID) {} // 提交員工信息一元消息}//發(fā)送請求的數(shù)據(jù)類型結(jié)構(gòu)message Employee{ string name = 1; int32 age = 2;}//返回函數(shù)處理結(jié)果的類型結(jié)構(gòu)message EmployeeID{ int32 id = 1;}

函數(shù)部分

編譯之后,名稱為“service Greeter”的服務(wù)及函數(shù)AddEmployee的定義在helloworld_grpc_web_pb.js文件中:

圖文詳解vue中proto文件的函數(shù)調(diào)用

圖文詳解vue中proto文件的函數(shù)調(diào)用

參數(shù)部分

Employee及EmployeeID的參數(shù)定義在helloworld_pb.js中:

1、發(fā)送請求的參數(shù)Employee

Employee的第一個(gè)參數(shù)name 函數(shù)形式如下(此處是請求參數(shù),使用set格式):

圖文詳解vue中proto文件的函數(shù)調(diào)用

Employee的第二個(gè)參數(shù)age函數(shù)形式如下(此處是請求參數(shù),使用set格式):

圖文詳解vue中proto文件的函數(shù)調(diào)用

2、返回結(jié)果參數(shù)EmployeeID

EmployeeID返回結(jié)果只有id這一個(gè)參數(shù),函數(shù)結(jié)構(gòu)如下(此處是返回參數(shù),使用get格式):

圖文詳解vue中proto文件的函數(shù)調(diào)用

調(diào)用proto中的函數(shù)

一個(gè)簡單的調(diào)用示例如下(點(diǎn)擊button按鈕,產(chǎn)生一個(gè)單擊事件get_helloworld):

<el-button type='primary' @click='get_helloworld'> hello_world</el-button>

get_helloworld() { this.client = new GreeterClient('http://192.168.10.102:8181', null, null); // 創(chuàng)建請求參數(shù)并賦值 var request = new Employee(); request.setName('World'); request.setAge(11); // 調(diào)用客戶端相應(yīng)的grpc方法,發(fā)送grpc請求,并接受后臺發(fā)送回來的返回值 this.client.addEmployee(request, {'my-service-header': 'test_service'}, (err, response) => {if (err) { console.log(`Unexpected error for addEmployee: code = ${err.code}` +`, message = '${err.message}'` );} else { console.log(response.getId()); // 打印返回的信息} });},

此時(shí)可以在控制臺中看到夠返回的ID數(shù)值。

將返回結(jié)果顯示在界面中

函數(shù)的返回結(jié)果都要以合適的形式展示在界面的控件中,此處以:

1、table控件

table控件是使用比較頻繁的數(shù)據(jù)展示控件,此處示例proto代碼如下(返回列表數(shù)據(jù)格式,且包含枚舉變量):

rpc SelectAllCameras(SelectAllCamerasRequest) returns(SelectAllCamerasResponse){}// 查詢所有攝像機(jī)設(shè)備message SelectAllCamerasRequest{ int32 page_index = 1; int32 page_size = 2; string condition = 3;}//返回查詢結(jié)果,返回一個(gè)CameraInfo 的數(shù)組,CameraInfo 中又包含枚舉類型CameraBrandmessage SelectAllCamerasResponse{ CodeErr enumErrorNo = 1; repeated CameraInfo cameraArray = 2;}// 攝像機(jī)信息message CameraInfo{ string szCameraUID = 1; // uid string szName=2; // 名稱 東門口攝像機(jī) CameraBrand enumCameraBrand=3; // 品牌}// 攝像機(jī)品牌enum CameraBrand { DEFAULT_CAMERA_BRAND = 0; HIKI_VISION= 1; DAHUA = 2; UNIVIEW = 3;}

1、導(dǎo)入頭文件

import { device_register_serviceClient } from '../proto/device_manage_grpc_web_pb';import { SelectAllCamerasRequest,} from '../proto/device_manage_pb';

<el-table :data='caminfoTable' ref='caminfoTable' > <el-table-column type='index' :index='table_index' label='序號' width='50'></el-table-column> <el-table-column prop='UID' label='UID' align='center'> <template slot-scope='scope'> <span>{{scope.row.getSzcamerauid()}}</span> </template> </el-table-column> <el-table-column prop='szName' label='相機(jī)名' align='center'> <template slot-scope='scope'> <span>{{scope.row.getSzname()}}</span> </template> </el-table-column> <el-table-column prop='enumCameraBrand' label='相機(jī)品牌' align='center'> <template slot-scope='scope'> <span>{{CameraBrand[scope.row.getEnumcamerabrand()].label}}</span> </template> </el-table-column></el-table>

//將返回結(jié)果賦值給一個(gè)數(shù)組變量caminfoTable:[],//攝像機(jī)品牌,這里的CameraBrand是用在添加相機(jī)信息時(shí),下拉框選項(xiàng)內(nèi)容的填充,此處也用來顯示具體數(shù)據(jù)CameraBrand: [ {value:0, label:'默認(rèn)'}, { value: 1, label: '海*' }, { value: 2, label: '大*' }, { value: 3, label: '宇*' },],

//獲取相機(jī)設(shè)備的信息get_camerainfo_data(){ this.client = new device_register_serviceClient('http://192.168.10.102:8181', null, null); var request_selectallCam = new SelectAllCamerasRequest(); request_selectallCam.setPageIndex(this.Pagination_queryInfo.page_index); request_selectallCam.setPageSize(this.Pagination_queryInfo.per_page); this.client.selectAllCameras(request_selectallCam,{'my-service-header': 'dev_manage_service'},(err,response)=>{ if(err){console.log( `Unexpected error for selectAllCameras: code = ${err.code}` + `, message = '${err.message}'` ); }else{ var caminfoList = response.getCameraarrayList(); this.Pagination_total_pages=caminfoList.length; //求取頁碼總數(shù) this.caminfoTable = caminfoList; //將返回結(jié)果賦值給table數(shù)據(jù)表變量 } }); //調(diào)整頁碼的顯示為第一頁 this.Pagination_queryInfo.page_index=1; },

圖文詳解vue中proto文件的函數(shù)調(diào)用

總結(jié)

到此這篇關(guān)于vue中proto文件函數(shù)調(diào)用的文章就介紹到這了,更多相關(guān)vue proto文件函數(shù)調(diào)用內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!

標(biāo)簽: Vue
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国语精品一区| 国产美女高潮在线观看| 久久久男人天堂| 老鸭窝一区二区久久精品| 美女精品一区二区| 国产精品不卡| 欧美午夜精品一区二区三区电影| 九九久久婷婷| 蜜臀国产一区二区三区在线播放| 亚洲一二三区视频| 日本免费新一区视频| 国产麻豆精品久久| 国模大尺度视频一区二区| 99久久视频| 美国欧美日韩国产在线播放| 91嫩草精品| 欧美精品二区| 日韩国产欧美一区二区| 中文亚洲欧美| 国产日韩亚洲欧美精品| a天堂资源在线| 激情婷婷综合| 日韩成人精品一区二区三区| 久久精品女人| 久久精品国产www456c0m| 视频在线在亚洲| 国产精品欧美日韩一区| 99久久婷婷| 日本h片久久| 日韩深夜视频| 噜噜噜躁狠狠躁狠狠精品视频| 国产精品网址| 午夜久久免费观看| 日韩一区二区三区高清在线观看| 国产aa精品| 在线国产日韩| 国产精品99久久精品| 国产一区91| 激情不卡一区二区三区视频在线| 九一精品国产| 国产精品午夜av| 免费欧美一区| 久久成人福利| 亚洲欧美久久| 精品国产99| 蜜臀av性久久久久蜜臀aⅴ流畅| 久久精品国产久精国产| 亚洲免费中文| 国产精品伦理久久久久久| 亚洲欧美不卡| 亚洲性色av| 国产精品视频一区视频二区| 红桃视频国产精品| 精品视频在线一区二区在线| 亚洲欧美日韩精品一区二区| 97精品视频在线看| 欧美在线日韩| 天堂va蜜桃一区二区三区| 国产aa精品| 777久久精品| 亚洲一区欧美激情| 丝袜美腿一区| 国产精品久久| 中文字幕日韩亚洲| 亚洲小说欧美另类婷婷| 国产精品毛片久久| 91亚洲精品视频在线观看| 亚洲精品极品少妇16p| а√天堂8资源在线| 国产日本久久| 视频一区中文字幕精品 | 桃色av一区二区| **爰片久久毛片| 久久av在线| 一本一道久久a久久精品蜜桃| 电影91久久久| 国产在线不卡一区二区三区| 国产精品综合| 日韩不卡在线观看日韩不卡视频 | 亚洲黄色在线| 亚洲h色精品| 国产福利电影在线播放| 久久久国产精品入口麻豆| 国产成人精品一区二区三区视频| 日本精品一区二区三区在线观看视频| 群体交乱之放荡娇妻一区二区| 国产精品久久免费视频| 日韩精选在线| 亚洲日产av中文字幕| 蜜桃av一区二区三区电影| 一本一道久久a久久精品蜜桃| 日韩高清中文字幕一区二区| 精品三区视频| 国产在线观看91一区二区三区 | 国产一区二区三区天码| 久久香蕉精品香蕉| 精品香蕉视频| 国产精品白丝av嫩草影院| 日本麻豆一区二区三区视频| 蜜臀国产一区二区三区在线播放| 午夜久久99| 亚洲欧美日本日韩| 国产精品毛片| 亚洲丝袜啪啪| 日本亚洲最大的色成网站www | 羞羞答答国产精品www一本| 激情久久婷婷| 欧洲激情综合| 蜜臀久久99精品久久久久久9 | 日韩精品一区二区三区中文 | 91伊人久久| 国产精品一区三区在线观看| 欧美日韩亚洲一区在线观看| 国产图片一区| 精品日韩在线| 久久九九精品| 黄色日韩在线| 日本不卡的三区四区五区| 国产精品日韩精品中文字幕| 精品国产乱码久久久| 久久国产毛片| 欧美午夜不卡| 日本aⅴ精品一区二区三区| 国产精品久久乐| 丰满少妇一区| 欧美在线影院| 日韩精品成人在线观看| 日本视频一区二区| 麻豆91精品视频| 久久91导航| 视频一区二区中文字幕| 青青国产91久久久久久| 久久亚洲道色| 久久五月天小说| 视频一区二区三区入口| 国产欧美日韩亚洲一区二区三区| 精品国产乱码久久久久久1区2匹| 粉嫩av一区二区三区四区五区 | 99国产精品免费视频观看| 欧美+日本+国产+在线a∨观看| 久久亚洲视频| 国产精品s色| 久久蜜桃精品| 日本亚洲不卡| 中文字幕一区久| 蜜臀av性久久久久蜜臀aⅴ流畅 | 久久国产乱子精品免费女| 日本久久综合| 婷婷激情图片久久| 国产三级一区| 欧美日韩水蜜桃| 日本午夜精品视频在线观看| 欧美三级网址| 日本不卡视频在线观看| 日韩电影免费在线观看| 蜜臀av在线播放一区二区三区| 捆绑调教美女网站视频一区| 香蕉国产精品| 精品视频一区二区三区在线观看| 亚洲欧美日韩视频二区| 精品国产精品久久一区免费式| 国模 一区 二区 三区| 国产欧美视频在线| 美女久久久久| 国产一区2区| 亚洲精品美女91| 国产一在线精品一区在线观看| 国产精品一区二区三区www| 香蕉视频成人在线观看| 高清av不卡| 欧美经典一区| 综合干狼人综合首页| 亚洲成人二区| 精品三级国产| 欧美另类中文字幕 | 日本a级不卡| 在线精品视频在线观看高清| 色爱综合网欧美| 国产精品免费精品自在线观看| 国产亚洲毛片在线| 久久久久久美女精品| 国产成人精品一区二区免费看京 | 亚洲在线成人| 日韩一区亚洲二区| 国产精品亚洲欧美日韩一区在线| 久热精品在线| 欧美福利一区| 日本久久成人网| 超碰在线99| 国产成年精品| 福利片在线一区二区| 免费看久久久| 久久av免费| 国产精品22p| 国产日产一区| 久久精品99国产精品日本| 在线国产精品一区| 亚洲一区不卡| 国产精品91一区二区三区| 欧美成人基地 |