在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 問答/ HTML問答
墨沫 回答

JSON.stringify(obj, function(key, value) {}, 4);
可以在 函數(shù)過濾中篩選想要的對象。

我只是想換種思路試試。希望能幫助到你!

離人歸 回答

https使用ssl加密的,可以wireshark工具抓包,抓包前設(shè)置下對應(yīng)的密鑰,工具就可以幫你解密報文了。

夏木 回答

第一個問題你看你打印的結(jié)果
第一個是[]空數(shù)組 第二個是[{}]數(shù)組包含一個對象 第三個是[{},{}]包含兩個對象,
但你點擊的時候點的是newlist對象的引用,及指向內(nèi)存區(qū)域的值,因為你的方法執(zhí)行完了所以打開都是包含兩個對象,你可以運行一下下面的代碼看一下,第二個問題同第一個問題

var list = [{name:"xiaoming",age:12},{name:"xiaohong",age:13},{name:"dondong",age:15}];
var newlist = [];
for(var i = 0;i<list.length;i++){
    if(parseInt(list[i].age) !== 12){
        newlist.push(list[i]);
    }
    console.log(JSON.stringify(newlist));   
}
乖乖噠 回答

clipboard.png

Issue
這是舊版本的bug,ObjectClear的線程不是守護線程,導(dǎo)致主線程一直被阻塞,升級到 4.1.21 版本即可

還吻 回答

找到了一個好用的免費開源JS庫——streamedian

當(dāng)當(dāng)當(dāng)~上鏈接:https://streamedian.com

介紹中講到,Multifunctional HTML5 RTSP streaming video player over WebSocket
就是說,利用websocket實現(xiàn)多功能的H5的rtsp視頻流播放器

這里是使用文檔:https://streamedian.com/docs/

對于對websocket、linux、服務(wù)器、甚至英文一知半解(一竅不通)并看了文檔也不理解的同學(xué),請繼續(xù)看手把手中文教程:

首先我們理解一下個中原理:

目標(biāo):在你的瀏覽器(browser)上播放rtsp視頻流
問題:然而,H5的標(biāo)簽<video>不支持這樣的播放
方案:這里利用我們的streamedian在你的服務(wù)端開啟一個websocket代理(proxy),負責(zé)接收rtsp流,并轉(zhuǎn)播給你的瀏覽器客戶端,streamedian在客戶端利用中間件(Media Sources Extensions)將經(jīng)過轉(zhuǎn)播收到的RTP H264和AAC包轉(zhuǎn)化成MP4包,“喂給“<video>進行播放

下面拿到streamedian的code來感受一下:

JS庫下載

方法一:通過官網(wǎng)下載
可能不是最新版,streamedian團隊還在不斷地修復(fù)bug中,建議用方法二、三下載最新更新的版本

進入https://streamedian.com 完成注冊并登錄
clipboard.png

clipboard.png
可以看到最上面紅框標(biāo)注的是我們需要的客戶端和服務(wù)端的JS程序;

針對客戶端,如果你使用H5的原生播放器<video>標(biāo)簽,下載Download player即可,此外還提供了代替版本————結(jié)合非原生H5播放器的clappr integration、videojs integration、Flowerplayer integration可供選擇。這里我只下載了Download player
針對服務(wù)端,下載proxy,這里的.rpm和.deb是兩種格式,選擇其一下載,我這里用的ubuntu,.deb更適用,點擊下載

接下來是對我們使用的免費版本streamedian的特性描述;
在Domain欄里。你需要輸入你所使用的客戶端的域名或IP,Add之后,點擊Download license。保存好這個license后面會用到,后面會解釋為什么要在license中明確特定的客戶端域名

方法三:從git上拉下來
npm install git://github.com/Streamedian/html5_rtsp_player.git
方法二:下載git的壓縮包
clipboard.png

配置與安裝

梳理一下,我們現(xiàn)在下載了什么呢?客戶端JS streamedian,服務(wù)端proxy streamedian_proxy.deb,一個licsense wsp.lic
clipboard.png

  • 服務(wù)端配置

將streamedian_proxy.deb和wsp.lic分別上傳至服務(wù)器,并在streamedian_proxy.deb根目錄下sudo dpkg -i streamedian_proxy.deb #安裝streamedian_proxy.deb軟件包(其中-i等價于--install)

安裝好后會生成/etc/ws_rtsp.ini,進入這個路徑,利用vim進行配置,這里我們只要設(shè)置general,其中port就是你的服務(wù)端轉(zhuǎn)播服務(wù)的端口,liscense_path則是你上傳的wsp.lic的絕對路徑,PRO version的參數(shù)可以不進行修改

clipboard.png

配置好端,可以用service ws_rtsp start命令啟動該服務(wù),那么就在后端相應(yīng)端口建立起了一個將rtsp轉(zhuǎn)播服務(wù)。至此服務(wù)端已經(jīng)配置好,只要前端把rtsp地址通過socket發(fā)送給服務(wù)端,就可收到rtsp流的socket包了

service ws_rtsp stop命令可以用于停止該服務(wù),ps -aux|grep ws_rtsp命令可以用于查詢該服務(wù)進程的運行情況
clipboard.png

  • 客戶端配置

用Vs Code打開下載好的streamedian

終端運行npm install下載依賴
終端運行npm install --global rollup這里我們安裝的的rollup是一個JS模塊打包工具,后面會用到

接下來打開rollup.config.js,其中的entry配置了源文件,target則指定了打包生成的目標(biāo)文件的目錄及文件名。終端運行rollup -c,可以看到在dist目錄下打包生成了目標(biāo)文件streamedian.js

clipboard.png

至此我們的客戶端工作完成一半,客戶端的頁面在哪里呢?下面我們來做一個最簡單的頁面,這里以文件中的index.html為例
可以看到<script>標(biāo)簽中引用了我們打包好的streamedian.js

引用了<video>標(biāo)簽播放rtsp視頻

<source>中指定了rtsp流源,rtsp://184.72.239.149/vod/mp4:BigBuckBunny_175k.mov是一個穩(wěn)定的可用于測試的源

socket的參數(shù)則是我們運行的rtsp流轉(zhuǎn)播服務(wù)器運行url,格式為ws://服務(wù)器IP:端口號,可以看到這里的端口號就是之前配置好的1104

clipboard.png

現(xiàn)在我們在瀏覽器中打開index.html,可是并沒有視頻顯示!我的理解是,前期我們在license中設(shè)置過客戶端的IP或域名,這意味對服務(wù)端來說,只對我們制定的客戶端進行流轉(zhuǎn)播,因此還差一步

clipboard.png

把index.html及streamedian.js放在同一目錄下,并上傳至制定的客戶端服務(wù)器

clipboard.png

大功告成~~

愛礙唉 回答

watch監(jiān)聽vuex和<input>雙向綁定的數(shù)據(jù)都可以監(jiān)聽成功,你那個對應(yīng)的return getDefaultTime(widgetConfig.timeType,widgetConfig.timeType)中的getDefaultTime函數(shù)是返回的對象嗎

久舊酒 回答

你好,我這有關(guān)于這個問題一篇文章;
你這是沒去 swiper 官網(wǎng)看更新文檔。
vue引入新版 swiper

心癌 回答

這樣寫應(yīng)該沒問題的,這不是props的錯,props只是一個名稱,用aaa都可以的,可能是版本的問題,看看你的版本號,以前的版本我記得是用的scope="props",沒有前面的slot-

厭惡我 回答

2種實現(xiàn)方式,一是不通過路由,只是修改foodist組件的內(nèi)容,傳值方式有3種,一是兄弟組件傳值,二是使用一個空的 Vue 實例作為事件總線,三是vuex。點擊navMenu的導(dǎo)航欄,將id傳給foodlist組件,然后通過這個id來處理修改foodlist中的數(shù)組。二是通過動態(tài)路由來處理,這個可以看官方文檔。思路給你了,剩下的你可以自己去查資料來解決。

陪我終 回答

vue+webpack項目中使用dev-server搭建虛擬服務(wù)器,請求json文件數(shù)據(jù),實現(xiàn)前后臺分離開發(fā)
一般要在build/dev-server.js文件中
在var app = express()這個實例的下面添加如下代碼
// 本地json-server服務(wù)器搭建代碼
// 引入數(shù)據(jù)庫文件
var appData = require('../mock.json')
// 引入數(shù)據(jù)庫
var getBoardList = appData.getBoardList
var apiRoutes = express.Router()
// 使用api的方法來創(chuàng)建連接時候的請求
apiRoutes.post('/getBoardList', function (req, res) {
res.json({

errno: 0 ,
data: getBoardList

});
})
// 調(diào)用api
app.use('/api', apiRoutes)

那現(xiàn)在應(yīng)該如何修改?或者要參考哪些文檔?webpack自身文檔并沒有詳細說明。

怣人 回答

這個主要是Angular臟檢查和echart的requestAnimationFrame方法沖突的問題。echart在繪制完成圖表之后,還是會不停調(diào)用requestAnimationFrame方法,而這個方法會觸發(fā)Angular的臟檢查,造成Angular不斷的檢查DOM樹,導(dǎo)致CPU占用一直居高不下,解決辦法如下:


this.ngZone.runOutsideAngular(() => {
  this.chart = echarts.init(this.root.nativeElement);
  this.chart.setOption(this.option, true);
})

這樣可以讓charts圖表的相關(guān)方法排除在Angular的臟檢查之外。
深入探討和研究可以參考:
echarts在GitHub上的一個關(guān)于該問題的issue
segmentfault探討這個問題的一篇文章

心夠野 回答

這是因為在彈出的Modal中的Input中,使用了Form.
Modal中的FormItem去掉,然后再去掉onOk事件中的validateFields驗證方法

傲嬌范 回答
瀑布流的區(qū)域始終保持固定數(shù)量的item

應(yīng)該是用了DOM回收吧

青瓷 回答

你都說了是異步問題了,直接賦值肯定會有問題啊,所有依賴于請求的操作都要放在異步回調(diào)里。

法克魷 回答

style.height獲取不了的,你高度沒寫在行間,也就是style里,用offsetHeight