成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

圖文詳解vue中proto文件的函數調用

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

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

//進入proto文件夾執行下列編譯,將helloworld.proto替換為當前的.proto文件名protoc -I=. helloworld.proto --js_out=import_style=commonjs,binary:. --grpc-web_out=import_style=commonjs,mode=grpcwebtext:.

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

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

.proto中函數的結構,主要由函數及參數2部分組成:

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

函數部分

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

圖文詳解vue中proto文件的函數調用

圖文詳解vue中proto文件的函數調用

參數部分

Employee及EmployeeID的參數定義在helloworld_pb.js中:

1、發送請求的參數Employee

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

圖文詳解vue中proto文件的函數調用

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

圖文詳解vue中proto文件的函數調用

2、返回結果參數EmployeeID

EmployeeID返回結果只有id這一個參數,函數結構如下(此處是返回參數,使用get格式):

圖文詳解vue中proto文件的函數調用

調用proto中的函數

一個簡單的調用示例如下(點擊button按鈕,產生一個單擊事件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); // 創建請求參數并賦值 var request = new Employee(); request.setName('World'); request.setAge(11); // 調用客戶端相應的grpc方法,發送grpc請求,并接受后臺發送回來的返回值 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()); // 打印返回的信息} });},

此時可以在控制臺中看到夠返回的ID數值。

將返回結果顯示在界面中

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

1、table控件

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

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

1、導入頭文件

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='相機名' align='center'> <template slot-scope='scope'> <span>{{scope.row.getSzname()}}</span> </template> </el-table-column> <el-table-column prop='enumCameraBrand' label='相機品牌' align='center'> <template slot-scope='scope'> <span>{{CameraBrand[scope.row.getEnumcamerabrand()].label}}</span> </template> </el-table-column></el-table>

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

//獲取相機設備的信息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; //求取頁碼總數 this.caminfoTable = caminfoList; //將返回結果賦值給table數據表變量 } }); //調整頁碼的顯示為第一頁 this.Pagination_queryInfo.page_index=1; },

圖文詳解vue中proto文件的函數調用

總結

到此這篇關于vue中proto文件函數調用的文章就介紹到這了,更多相關vue proto文件函數調用內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Vue
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
久久国产欧美日韩精品| 红杏aⅴ成人免费视频| 欧洲色大大久久| 99热精品在线| 亚洲免费高清| 亚洲精品久久| 日韩av一区二区三区四区| 亚洲午夜在线视频| 亚洲国产成人精品视频| 亚洲国产欧美一区二区三区丁香婷| 中文字幕欧美一| 自拍偷自拍亚洲精品播放| 成人欧美一区二区三区视频网页| 国产精品久久久久四虎| 亚洲男女自偷自拍| 亚洲综合二区| 91九色02白丝porn| 国产乱码精品| 噜噜噜躁狠狠躁狠狠精品视频| 一本久道久久综合狠狠爱| 久久9热精品视频| 91免费视频观看| 亚洲国产综合色| 欧美日韩一区视频| 91精品国产入口| 久久精品男人的天堂| 国产成人啪免费观看软件| 99视频有精品| 国产在线国偷精品免费看| 成人午夜免费电影| 久久国产精品亚洲77777| 久久久久久九九九九| 欧美老肥妇做.爰bbww视频| 日韩一区二区精品葵司在线| 26uuu另类欧美| 亚洲乱码国产乱码精品精小说| 天天综合日日夜夜精品| 国v精品久久久网| 欧美日韩伊人| 性欧美长视频| 精品国产一区a| 亚洲区小说区图片区qvod| 日产国产欧美视频一区精品 | 国产一区二区网址| 欧美一区二区三区久久精品| 亚洲精品综合| 欧美一区欧美二区| 亚洲男同1069视频| 久久99久久精品| 欧美日本中文| 欧美婷婷六月丁香综合色| 国产午夜精品理论片a级大结局| 樱桃视频在线观看一区| 国产乱子轮精品视频| 伊人婷婷久久| 91精品在线免费| 一二三四社区欧美黄| 国产精品亚洲第一| 一本久道久久综合狠狠爱| 日韩一区国产二区欧美三区| 一区二区三区在线看| 国产suv精品一区二区883| 亚洲综合不卡| 国产偷久久久精品专区| 日韩欧美区一区二| 日本韩国精品在线| 国产精品国产自产拍高清av| 国内成人精品2018免费看| 亚洲国产一区二区精品专区| 红桃视频亚洲| 欧美日韩一区在线观看视频| 欧美私人免费视频| 亚洲精品中文字幕乱码三区| 成人综合激情网| 欧洲一区在线观看| 亚洲天堂网中文字| 91在线一区二区三区| 欧美亚洲另类激情小说| 有码一区二区三区| 免费观看久久久4p| 国产色婷婷亚洲99精品小说| 国产一区二区在线免费观看| 国产白丝精品91爽爽久久| 欧美日本韩国一区二区三区| 久久久精品日韩| 欧美tickling网站挠脚心| 国产盗摄女厕一区二区三区| 中文字幕精品在线不卡| av电影天堂一区二区在线观看| 国产精品videossex久久发布| 欧美一区二视频| 一区二区三区在线免费观看| 国产一区二三区好的| 99久久伊人网影院| 欧美一区激情视频在线观看| 亚洲女同在线| 欧美激情中文不卡| 韩国一区二区三区在线观看| 一区二区久久久| 欧美亚洲动漫另类| 日韩一区二区电影网| 亚洲男人的天堂在线aⅴ视频 | 爽爽淫人综合网网站| 亚洲精品在线二区| 日韩毛片视频在线看| 亚洲大胆av| 国产精品高潮呻吟久久| 国产精品va| 亚洲免费av观看| 国产午夜精品在线| 天堂成人国产精品一区| 欧美综合国产| 亚洲国产精品综合小说图片区| 国产日韩欧美在线播放不卡| **欧美大码日韩| 亚洲在线观看| 美女久久久精品| 91精品国产综合久久久久久| 成人福利视频网站| 亚洲国产精品成人久久综合一区| 在线精品一区| 丝袜亚洲另类欧美| 这里只有精品电影| 91日韩一区二区三区| 亚洲欧美日韩一区二区| 老牛国产精品一区的观看方式| 精品一区二区在线视频| 欧美成人午夜电影| 亚洲欧洲一区| 蜜桃视频免费观看一区| 精品乱人伦小说| 精品二区视频| 奇米亚洲午夜久久精品| 日韩三级视频在线看| 欧美日韩精品免费观看 | 一区二区精品在线| 欧美理论电影在线| 欧美精品一线| 秋霞午夜av一区二区三区| 91精品国产乱码久久蜜臀| 亚洲午夜在线| 欧美一级在线免费| 亚洲国产精选| 欧美α欧美αv大片| 国产精品入口66mio| 国产精品一区二区久激情瑜伽| 中文无字幕一区二区三区| 色婷婷av一区二区三区之一色屋| 国产1区2区3区精品美女| 亚洲男人都懂的| 日韩精品一区二区三区视频在线观看| 欧美亚洲不卡| 国内一区二区在线| 国产日韩欧美在线一区| 久久国产精品久久w女人spa| 国产精品1024久久| 欧美福利电影网| 亚洲人体偷拍| 99国产精品久久久久久久久久| 久久久久免费观看| 欧洲精品在线观看| 在线成人黄色| 韩国理伦片一区二区三区在线播放| 国产精品一二| 国产1区2区3区精品美女| 88在线观看91蜜桃国自产| 亚洲精选在线| 国产成人免费网站| 日韩成人一级片| 91精品国产色综合久久不卡电影 | 18欧美亚洲精品| 欧美色电影在线| 奇米影视一区二区三区小说| 精品国产三级电影在线观看| 在线成人www免费观看视频| 成人中文字幕合集| 亚洲国产综合人成综合网站| 亚洲国产日韩一级| 国产精品国产三级国产| 18成人在线视频| 欧美伊人影院| 亚洲精品高清在线| 色婷婷精品久久二区二区蜜臀av| 另类人妖一区二区av| 亚洲欧美日韩中文播放| 欧美精品一区二区视频| 成人在线综合网站| 亚洲欧美日韩国产综合在线| 欧美一区在线视频| 欧美日韩激情一区二区| 毛片一区二区三区| 一本大道av伊人久久综合| 免费精品视频在线| 欧美激情五月| 国色天香一区二区| 精品在线播放免费| 国产区二精品视| 亚洲少妇诱惑| 欧美日韩国产精品一卡| 国产人成亚洲第一网站在线播放 |