溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用Vue2x怎么實現(xiàn)一個圖片預覽插件

發(fā)布時間:2021-04-07 17:56:02 來源:億速云 閱讀:184 作者:Leah 欄目:web開發(fā)

使用Vue2x怎么實現(xiàn)一個圖片預覽插件?針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

MyPlugin.install = function (Vue, options) {
 // 1. 添加全局方法或?qū)傩?
 Vue.myGlobalMethod = function () {
  // 邏輯...
 }

 // 2. 添加全局資源
 Vue.directive('my-directive', {
  bind (el, binding, vnode, oldVnode) {
   // 邏輯...
  }
  ...
 })

 // 3. 注入組件
 Vue.mixin({
  created: function () {
   // 邏輯...
  }
  ...
 })

 // 4. 添加實例方法
 Vue.prototype.$myMethod = function (methodOptions) {
  // 邏輯...
 }
}

我采用第一種方式來編寫這個插件

1.第一步創(chuàng)建項目

vue init webpack-simple youProjectName(你的項目名稱)具體操作不在贅述

使用Vue2x怎么實現(xiàn)一個圖片預覽插件

2.開始插件開發(fā),編寫index.js

import vuePictureViewer from './vue-picture-viewer'
const pictureviewer = {
 install (Vue, options) {
  Vue.component(vuePictureViewer.name, vuePictureViewer)
 }
}

if (typeof window !== 'undefined' && window.Vue) { // 這段代碼很重要
 window.Vue.use(pictureviewer)
}
export default pictureviewer

3.編寫vue-picture-viewer.vue也挺簡單(具體可以去看源碼)

4.如何使用(main.js)

import vuePictureViewer from './lib/index.js'
Vue.use(vuePictureViewer)

App.vue

<template>
 <div id="app">
  <vue-picture-viewer :imgData="imgUrl" :switch="true" v-if="imgUrl"></vue-picture-viewer>
 </div>
</template>

<script>
export default {
 name: 'app',
 data () {
  return {
   imgUrl: [{
     url:'http://p8ny46w8x.bkt.clouddn.com/test1.jpg',
     name: 'test1.jpg'
    },
    {
     url: 'http://p8ny46w8x.bkt.clouddn.com/test2.jpg',
     name: 'test2.jpg'
    }, {
     url: 'http://p8ny46w8x.bkt.clouddn.com/test3.jpg',
     name: 'test3.jpg'
    },
    {
     url: 'http://p8ny46w8x.bkt.clouddn.com/test4.jpg',
     name: 'test4.jpg'
    }]
  }
 }
}
</script>

<style>
* {
 margin: 0;
 padding: 0;
}
html, body {
 width: 100%;
 height: 100%;
}
</style>

5.打包前的配置webpack.config.js(很重要?。。。?br/>

module.exports = {
 entry: './src/lib/index.js',
 output: {
  path: path.resolve(__dirname, './dist'),
  publicPath: '/dist/',
  // filename: 'build.js',
  filename: 'vue-picture-viewer.js',
  library: 'pictureViewer',
  libraryTarget: 'umd',
  umdNamedDefine: true
 },

6.打包成功,配置package.json

"license": "MIT", // 許可證
 "private": false, // 默認是true 私人的 需要改為false, 不然發(fā)布不成功!
 "main": "dist/vue-picture-viewer.js", 這個超級重要 決定了你 import xxx from “vue-picture-viewer” 它默認就會去找 dist下的vue-picture-viewer 文件
 "repository": {
  "type": "git",
  "url": "https://github.com/sangcz/vue-picture-viewer" // github項目地址
 },

7.一切Ok準備發(fā)布!

8.首先注冊好npm后 添加用戶

npm adduser 
Username: your name 
Password: your password 
Email: yourmail

// 查看一下登錄的是不是你自己
npm whoami

// 發(fā)布
npm publish

// 這里我遇到一個問題,發(fā)布失敗了!

什么原因呢?

使用Vue2x怎么實現(xiàn)一個圖片預覽插件

關(guān)于使用Vue2x怎么實現(xiàn)一個圖片預覽插件問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

vue
AI