摘要:創(chuàng)建頁面監(jiān)聽,等待微信端頁面加載完畢觸發(fā)音頻播放創(chuàng)建觸摸監(jiān)聽,當(dāng)瀏覽器打開頁面時,觸摸屏幕觸發(fā)事件,進行音頻播放場景記錄頁面加載時間不準(zhǔn)確。
2017是充實的一年,這一年寫了這幾個項目:一個微信公眾號開發(fā),兩個hybrid app開發(fā),一個PC端后臺erp,還有個人博客項目。
所用到的技術(shù)棧
1、PC端erp屬于維護項目,技術(shù)棧為jq+bootstrap。
2、移動端的技術(shù)棧是webpack+vue+sass+mint-ui。
3、個人博客項目技術(shù)棧是php+webpack+vue+sass+element-ui。
hybrid app開發(fā)
與原生app交互所使用的是WebViewJavascriptBridge,github地址:WebViewJavascriptBridge。
WebViewJavascriptBridge用來實現(xiàn)在Web前端與客戶端之間進行消息傳遞,有iOS版本與Android版本,所以可以統(tǒng)一消息通訊機制。
遇到的問題
1)場景:公眾號項目每次跳轉(zhuǎn)的時候總會有invalid signature出現(xiàn)。
解決方法:每次頁面跳轉(zhuǎn)的時候都initWx,在app.vue里面
created() { this.$router.beforeEach((to, from, next) => { wx.config({ debug: true, // 開啟調(diào)試模式 appId: "", // 必填,公眾號的唯一標(biāo)識 timestamp: , // 必填,生成簽名的時間戳 nonceStr: "", // 必填,生成簽名的隨機串 signature: "",// 必填,簽名 jsApiList: [] // 必填,需要使用的JS接口列表 }); }) }
2)場景:audio標(biāo)簽進行音頻播放在微信不會播放或者不會自動播放
解決方法:用js給audio加上src,用js進行autoplay的操作,代碼如下。
mounted(){ let musicEle=document.querySelector("#music"); musicEle.src="xxx.mp3"; //--創(chuàng)建頁面監(jiān)聽,等待微信端頁面加載完畢 觸發(fā)音頻播放 document.addEventListener("DOMContentLoaded", function () { function audioAutoPlay() { var musicEle0 = document.getElementById("music"); musicEle0.play(); document.addEventListener("WeixinJSBridgeReady", function () { musicEle0.play(); }, false); } audioAutoPlay(); }); //--創(chuàng)建觸摸監(jiān)聽,當(dāng)瀏覽器打開頁面時,觸摸屏幕觸發(fā)事件,進行音頻播放 document.addEventListener("touchstart", function () { function audioAutoPlay() { var musicEle0 = document.getElementById("music"); musicEle0.play(); } audioAutoPlay(); }); }
3)場景:記錄頁面加載時間不準(zhǔn)確。
解決方法:使用window.performance新特性,網(wǎng)上資料眾多,此處不多贅述。
移動端項目的一些優(yōu)化
a)去除console:在build/webpack.prod.conf.js
new webpack.optimize.UglifyJsPlugin({ compress: { warnings: false, drop_console: true,//去除console.log pure_funcs: ["console.log"],//去除console.log }, sourceMap: false, }),
b)去除打包的.map:config/index.js
productionSourceMap: false,
c)vue組件按需加載:參考文檔 vue-router官方文檔
const abc = () =>import ("@/components/abc") export default new Router({ routes: [ { path: "/abc", name: "abc", component: abc }, ] })
d)項目的體積問題:服務(wù)端開啟gzip,資源放在cdn上。查看項目的各模塊的體積大小可使用webpack-bundle-analyzer,之前文章有所介紹,點擊此處
http請求封裝
沒有使用axios,自己封裝了平時用的get,post請求。github地址
移動端log查看工具
經(jīng)常用的是vConsole
其他
沒有其他,單身狗一只,只能擼代碼。
總結(jié)
2017終于著手vue的實際項目,之前都是自己學(xué)習(xí)的,學(xué)的過程中沒踩到的坑大大小小都碰到好多。進行hybrid app的開發(fā)時,與android和ios同學(xué)溝通是非常重要的,之前沒這樣交互過,調(diào)試花了好久,摔倒了不可怕,可怕的是你沒爬起來。不足的地方有:github逛的還是太少,項目什么的都沒有好好整理,還有寫文章寫的少,應(yīng)該多寫些總結(jié)性的文章。
2018加油!
以上!
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/107569.html
摘要:然而這次的文章,就像賀師俊所說的這篇文章是從程序員這個老年度總結(jié)前端掘金年對我來說,是重要的一年。博客導(dǎo)讀總結(jié)個人感悟掘金此文著筆之時,已經(jīng)在眼前了。今天,我就來整理一篇,我個人認(rèn)為的年對開發(fā)有年終總結(jié)掘金又到 2016 Top 10 Android Library - 掘金 過去的 2016 年,開源社區(qū)異?;钴S,很多個人與公司爭相開源自己的項目,讓人眼花繚亂,然而有些項目只是曇花一...
摘要:寫在前面看到了死月佳楠等朋友都寫了關(guān)于的年度總結(jié),總覺得自己也應(yīng)該寫點東西來回首過去的一年,順便展望一下未來的年。在這份榜單上排在的位置,年也希望更上一層樓。年底跟女朋友結(jié)束了四年的戀愛長跑,成功領(lǐng)證。 寫在前面 看到了死月、doodlewind、佳楠等朋友都寫了關(guān)于 2017 的年度總結(jié),總覺得自己也應(yīng)該寫點東西來回首過去的一年,順便展望一下未來的 2018 年。 由于之前忙于撰寫《...
摘要:離職新路線年的總結(jié)在這里年總結(jié),其實在發(fā)布這個文章之前,就已經(jīng)跟阿里那邊再談新的,會以的級別入職阿里閑魚部門??偹苤?,我司在月份調(diào)整了一次架構(gòu),具體如下美團調(diào)整了組織架構(gòu)。 17年的總結(jié)來的更晚一點,其實是一直在猶豫要不要寫,主要感覺去年一年折騰的有點兇殘,連續(xù)換工作以及地點,一路走來有糾結(jié),有痛苦,有快樂,有興奮,有迷茫,有得有失,所以想了很久,還是來記錄下這一年的關(guān)鍵點。 離職 ...
摘要:離職新路線年的總結(jié)在這里年總結(jié),其實在發(fā)布這個文章之前,就已經(jīng)跟阿里那邊再談新的,會以的級別入職阿里閑魚部門??偹苤?,我司在月份調(diào)整了一次架構(gòu),具體如下美團調(diào)整了組織架構(gòu)。 17年的總結(jié)來的更晚一點,其實是一直在猶豫要不要寫,主要感覺去年一年折騰的有點兇殘,連續(xù)換工作以及地點,一路走來有糾結(jié),有痛苦,有快樂,有興奮,有迷茫,有得有失,所以想了很久,還是來記錄下這一年的關(guān)鍵點。 離職 ...
閱讀 3933·2021-09-09 09:33
閱讀 1796·2021-09-06 15:14
閱讀 1936·2019-08-30 15:44
閱讀 3089·2019-08-29 18:36
閱讀 3776·2019-08-29 16:22
閱讀 2104·2019-08-29 16:21
閱讀 2543·2019-08-29 15:42
閱讀 1658·2019-08-29 11:00