成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_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ⅴ国产紧身牛仔裤| 久久久国产精品午夜一区ai换脸| 韩国三级在线一区| 欧美熟乱第一页| 久久精品国产一区二区三| 日本韩国欧美在线| 免费观看日韩电影| 欧美日韩在线观看一区二区| 亚洲成人精品一区| 鲁大师影院一区二区三区| 亚洲一区av在线| 国产精品区一区| 亚洲一区二区三区四区不卡| 国产精品日韩欧美一区二区| 一区二区三区在线免费播放| 国产日韩欧美一区| 亚洲成av人片| 欧美中文字幕一区二区三区亚洲| 日韩制服丝袜先锋影音| 欧美亚洲动漫精品| 韩国精品主播一区二区在线观看 | 色偷偷成人一区二区三区91| 亚洲不卡av一区二区三区| 91久久精品一区二区二区| 久久99久久久欧美国产| 欧美精品欧美精品系列| 成人a免费在线看| 亚洲国产精品二十页| 亚洲小说区图片区| 一区二区三区在线视频免费| 午夜在线视频观看日韩17c| 日韩不卡一二三区| 欧美男男青年gay1069videost| 丁香婷婷综合色啪| 国产欧美日韩在线看| 在线观看成人av电影| 亚洲一区二区免费视频| 日本电影亚洲天堂一区| 国产高清亚洲一区| 国产午夜精品一区二区三区四区| 伊人久久综合| 丝袜诱惑制服诱惑色一区在线观看 | 天堂影院一区二区| 欧美三区免费完整视频在线观看| 国产精品一区二区三区四区| 久久久一区二区三区捆绑**| 亚洲网站视频| 一区二区三区精品| 色婷婷综合久久久久中文一区二区 | 亚洲人成在线播放网站岛国| 久久国产精品毛片| 激情偷乱视频一区二区三区| 久久众筹精品私拍模特| 精品白丝av| 日韩制服丝袜av| 91精品国产91久久久久久最新毛片 | 蜜乳av一区二区| 日韩欧美不卡在线观看视频| 狠狠干综合网| 日韩综合在线视频| 日韩小视频在线观看专区| 国产精品videossex久久发布| 亚洲小少妇裸体bbw| 91精品国产91综合久久蜜臀| 亚洲午夜激情在线| 免费看精品久久片| 久久久www免费人成精品| 一区二区三区av| 国产精品一区二区在线看| 日本一区二区三区久久久久久久久不 | 精品中文av资源站在线观看| 久久久www成人免费毛片麻豆 | 成人看片黄a免费看在线| 国产精品不卡视频| 色老汉一区二区三区| 97aⅴ精品视频一二三区| 亚洲成人av在线电影| 日韩一区国产二区欧美三区| 亚洲激情av| 极品瑜伽女神91| 国产精品久久久久精k8| 欧美色图一区二区三区| 91麻豆免费观看| 男人的天堂久久精品| 国产无遮挡一区二区三区毛片日本| 国产亚洲激情| 成人h版在线观看| 亚洲午夜电影在线观看| 精品免费一区二区三区| 国产美女在线精品免费观看| 成人综合日日夜夜| 天天综合色天天综合色h| 国产亚洲精久久久久久| 欧美少妇xxx| 亚洲激情在线| 国产精品主播直播| 日韩美女啊v在线免费观看| 在线观看91精品国产麻豆| 一本一本久久a久久精品综合妖精| 国产激情偷乱视频一区二区三区| 亚洲激情图片qvod| 精品sm在线观看| 91福利区一区二区三区| 极品日韩久久| 东方欧美亚洲色图在线| 亚洲va欧美va人人爽| 国产精品色在线| 91精品国产综合久久香蕉麻豆| 亚洲一区日韩| 欧美日韩国产亚洲一区| 国产一区二区三区精品视频| 亚洲国产日产av| 国产精品美女久久久久久久网站| 欧美日韩精品一区二区三区四区| 中国女人久久久| 欧美91大片| 国产成人免费视频网站| 日韩av一二三| 亚洲精品美国一| 久久久久久一二三区| 欧美日韩美少妇| 性8sex亚洲区入口| 好吊日精品视频| 菠萝蜜视频在线观看一区| 美国三级日本三级久久99| 一区二区在线看| 国产精品视频第一区| 日韩欧美一级精品久久| 欧美系列亚洲系列| 亚洲综合好骚| 狠狠综合久久av一区二区老牛| 粉嫩一区二区三区在线看| 美女视频黄a大片欧美| 亚洲综合在线五月| 国产精品色在线观看| 精品欧美一区二区三区精品久久 | 亚洲欧洲精品一区二区三区| 欧美成人福利视频| 欧美日韩国产欧美日美国产精品| 久久看片网站| 国产视频亚洲| 一区二区三区我不卡| 91猫先生在线| www.性欧美| 国产suv精品一区二区三区| 肉色丝袜一区二区| 一区二区三区精品久久久| 亚洲欧美综合色| 国产欧美精品国产国产专区 | 欧美jjzz| 成人国产免费视频| 国产精品91xxx| 久久99久久久久| 久久精品久久99精品久久| 日韩成人av影视| 日本在线播放一区二区三区| 亚洲成人资源网| 亚洲综合成人网| 又紧又大又爽精品一区二区| 亚洲欧美区自拍先锋| 中文字幕在线观看不卡| 欧美激情自拍偷拍| 久久嫩草精品久久久久| 欧美电影免费观看高清完整版在线观看| 欧美日韩国产一级二级| 欧美中文一区二区三区| 色综合久久精品| 久久亚洲色图| 色综合久久久久综合| 久久久精品动漫| 久久久久一区二区| 色域天天综合网| 色琪琪一区二区三区亚洲区| 老司机午夜免费精品视频| 久久这里有精品15一区二区三区| 亚洲欧美高清| 羞羞答答国产精品www一本| 亚洲一区二区免费看| 国产精品日韩一区二区| 午夜亚洲性色福利视频| 亚洲一区二区三区高清| 久久精品导航| 欧美亚洲动漫制服丝袜| 欧美日韩黄色一区二区| 欧美肥大bbwbbw高潮| 日韩三级视频在线观看| 精品88久久久久88久久久| 精品国产区一区| 国产亚洲美州欧州综合国| 中文字幕av一区二区三区免费看| 国产精品天干天干在观线| 国产精品毛片高清在线完整版| 亚洲同性gay激情无套| 亚洲午夜精品久久久久久久久| 丝袜美腿亚洲一区| 极品瑜伽女神91| 成人午夜av在线| 国产一区高清视频|