越寫悅快樂之Vue項目如何集成Panolens.js

Panolens.js - 圖片來自我的手機

今天的越寫悅快樂之系列文章為大家?guī)韚e項目如何集成Panolens.js的文章。作為一名追求的碼農(nóng)來說旦装,研究新技術(shù)并且應(yīng)用到產(chǎn)品中低飒,是我們不懈的追求获雕,大家有沒有實踐過使用Panolens.js來構(gòu)建我們的全景地圖瀏覽頁面呢?今天我為大家分享一下如何在Vue項目中集成Panolens.js柿扣。

Panolens.js是一款基于事件驅(qū)動和WebGL的輕量和可擴展的全景視圖組件,它基于three.js 構(gòu)建,想了解相關(guān)內(nèi)容,請參考GitHub

開發(fā)環(huán)境

  • Window 10.0.17763
  • Node 10.18.0
  • Visual Studio Code 1.48.2
  • Vue 2.6.12
  • Vue CLI 4.5.9

接入步驟

創(chuàng)建項目

我們可以通過兩種方式來創(chuàng)建項目:

1)命令行

  • vue create panolens-vue(選擇默認(rèn)配置)

2)Vue UI

在命令行或者終端輸入vue ui即可打開默認(rèn)瀏覽器侄非,然后選擇項目存放位置蕉汪、輸入項目信息流译、包管理方式等信息,最后點擊創(chuàng)建工程者疤。

安裝Panolens依賴

我們在終端下執(zhí)行以下命令:

yarn add vuejs-vr -S

vuejs-vrPanolens.js的Vue封裝

項目配置文件

上一步我們安裝了vuejs-vr依賴福澡,下面我們可以看一下具體的package.json配置文件,文件的內(nèi)容如下:

{
  "name": "panolens-vue",
  "version": "0.1.0",
  "private": true,
  "scripts": {
    "serve": "vue-cli-service serve",
    "build": "vue-cli-service build",
    "lint": "vue-cli-service lint"
  },
  "dependencies": {
    "core-js": "^3.6.5",
    "vue": "^2.6.12",
    "vuejs-vr": "^1.2.2"
  },
  "devDependencies": {
    "@vue/cli-plugin-babel": "~4.5.0",
    "@vue/cli-plugin-eslint": "~4.5.0",
    "@vue/cli-service": "~4.5.0",
    "babel-eslint": "^10.1.0",
    "eslint": "^6.7.2",
    "eslint-plugin-vue": "^6.2.2",
    "vue-template-compiler": "^2.6.12"
  },
  "eslintConfig": {
    "root": true,
    "env": {
      "node": true
    },
    "extends": [
      "plugin:vue/essential",
      "eslint:recommended"
    ],
    "parserOptions": {
      "parser": "babel-eslint"
    },
    "rules": {}
  },
  "browserslist": [
    "> 1%",
    "last 2 versions",
    "not dead"
  ]
}

創(chuàng)建格式化配置文件

為了規(guī)范編寫的代碼驹马,我們使用Prettier來格式化代碼革砸,此時我們在項目根目錄下創(chuàng)建.prettierrc.js文件,并寫入以下內(nèi)容:

module.exports = {
  semi: false,
  singleQuote: true
}

然后我們就可以在VSCode的終端中輸入yarn lint命令來格式化代碼糯累,隨后我們在項目根目錄下創(chuàng)建.vscode目錄算利,并寫入配置文件setting.json,文件內(nèi)容如下:

{
  "editor.tabSize": 2,
  "editor.formatOnSave": false,
  "prettier.semi": true,
  "prettier.singleQuote": true,
  "editor.codeActionsOnSave": {
    "source.fixAll.eslint": true
  }
}

編寫渲染組件

我們在項目的入口組件App.vue文件中引入vuejs-vr并在模板template標(biāo)簽中寫入組件,其文件內(nèi)容如下:

<template>
  <div id="app">
    <Pano
      :source="
        'https://raw.githubusercontent.com/mudin/vue-vr/master/demos/assets/equirectangular.jpg'
      "
      style="height: 740px"
    ></Pano>
  </div>
</template>

<script>
import { Pano } from 'vuejs-vr'

export default {
  name: 'App',
  components: {
    Pano
  }
}
</script>

<style>
body {
  margin: 0 auto;
}
</style>

項目結(jié)構(gòu)

當(dāng)我們完成代碼的編寫后泳姐,可以看到項目的結(jié)構(gòu)如下圖所示:

項目結(jié)構(gòu) - 圖片來自我的手機

查看結(jié)果

我們在項目所在的控制臺(或者終端)執(zhí)行yarn dev命令效拭,然后通過Router跳轉(zhuǎn)到about頁面即可看到表單,點擊創(chuàng)建按鈕胖秒。

運行結(jié)果 - 圖片來自我的手機

參考

個人收獲及總結(jié)

本文介紹了如何在Vue項目中集成Panolens缎患,也就是利用Three.js構(gòu)建全景的瀏覽頁面,將圖片或者視頻資源綁定后阎肝,就可以查看全景圖片或者視頻挤渔,利用Canvas來呈現(xiàn),通過捕獲一系列鼠標(biāo)事件進行交互风题,我相信隨著對全景組件的深入了解判导,我們會提供更多更有趣的交互嫉父,讓我們的產(chǎn)品或者服務(wù)成就我們的客戶,成為他們不可或缺的一部分眼刃,讓我們一起為公司創(chuàng)造價值熔号。若是我的文章對你有所啟發(fā),那將是我莫大的榮幸鸟整。希望和您一起精進引镊,成為更好的自己。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末篮条,一起剝皮案震驚了整個濱河市弟头,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌涉茧,老刑警劉巖赴恨,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異伴栓,居然都是意外死亡伦连,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門钳垮,熙熙樓的掌柜王于貴愁眉苦臉地迎上來惑淳,“玉大人,你說我怎么就攤上這事饺窿∑缃梗” “怎么了?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵肚医,是天一觀的道長绢馍。 經(jīng)常有香客問我,道長肠套,這世上最難降的妖魔是什么舰涌? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任,我火速辦了婚禮你稚,結(jié)果婚禮上瓷耙,老公的妹妹穿的比我還像新娘。我一直安慰自己入宦,他們只是感情好哺徊,可當(dāng)我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著乾闰,像睡著了一般落追。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上涯肩,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天轿钠,我揣著相機與錄音巢钓,去河邊找鬼。 笑死疗垛,一個胖子當(dāng)著我的面吹牛症汹,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播贷腕,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼背镇,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了泽裳?” 一聲冷哼從身側(cè)響起瞒斩,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎涮总,沒想到半個月后胸囱,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡瀑梗,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年烹笔,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片抛丽。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡谤职,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出铺纽,到底是詐尸還是另有隱情柬帕,我是刑警寧澤哟忍,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布狡门,位于F島的核電站,受9級特大地震影響锅很,放射性物質(zhì)發(fā)生泄漏其馏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一爆安、第九天 我趴在偏房一處隱蔽的房頂上張望叛复。 院中可真熱鬧,春花似錦扔仓、人聲如沸褐奥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽撬码。三九已至,卻和暖如春版保,著一層夾襖步出監(jiān)牢的瞬間呜笑,已是汗流浹背夫否。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留叫胁,地道東北人凰慈。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓,卻偏偏與公主長得像驼鹅,于是被迫代替她去往敵國和親微谓。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內(nèi)容