亚洲中字慕日产2020,大陆极品少妇内射AAAAAA,无码av大香线蕉伊人久久,久久精品国产亚洲av麻豆网站

資訊專(zhuān)欄INFORMATION COLUMN

從開(kāi)發(fā)到發(fā)布一款基于Vue2x的圖片預(yù)覽插件

ivydom / 2508人閱讀

摘要:項(xiàng)目地址先來(lái)看下關(guān)于開(kāi)發(fā)插件的幾種方式具體請(qǐng)移步官網(wǎng)官網(wǎng)添加全局方法或?qū)傩赃壿嬏砑尤仲Y源邏輯注入組件邏輯添加實(shí)例方法邏輯我采用第一種方式來(lái)編寫(xiě)這個(gè)插件第一步創(chuàng)建項(xiàng)目你的項(xiàng)目名稱(chēng)具體操作不在贅述開(kāi)始插件開(kāi)發(fā),編寫(xiě)這段代碼很重要編

項(xiàng)目地址: vue-picture-viewer

先來(lái)看下Demo

LiveDemo

關(guān)于開(kāi)發(fā)Vue插件的幾種方式 (具體請(qǐng)移步官網(wǎng))Vue官網(wǎng)
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. 添加實(shí)例方法
  Vue.prototype.$myMethod = function (methodOptions) {
    // 邏輯...
  }
}
我采用第一種方式來(lái)編寫(xiě)這個(gè)插件

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

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

2.開(kāi)始插件開(kāi)發(fā),編寫(xiě)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.編寫(xiě)vue-picture-viewer.vue也挺簡(jiǎn)單(具體可以去看源碼)

4.如何使用(main.js)

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

App.vue






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

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, // 默認(rèn)是true 私人的 需要改為false, 不然發(fā)布不成功!
  "main": "dist/vue-picture-viewer.js", 這個(gè)超級(jí)重要 決定了你 import xxx from “vue-picture-viewer” 它默認(rèn)就會(huì)去找 dist下的vue-picture-viewer 文件
  "repository": {
    "type": "git",
    "url": "https://github.com/sangcz/vue-picture-viewer" // github項(xiàng)目地址
  },

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

8.首先注冊(cè)好npm后 添加用戶

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

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

// 發(fā)布
npm publish

// 這里我遇到一個(gè)問(wèn)題,發(fā)布失敗了!
什么原因呢?

9.解決了上面的問(wèn)題,發(fā)布成功了!開(kāi)心

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/94973.html

相關(guān)文章

  • 當(dāng)大多數(shù)人對(duì)Vue理解爐火純青時(shí)候,是不是該思考一下怎么讓vue頁(yè)面騷氣起來(lái)

    寫(xiě)在前面 當(dāng)大多數(shù)人Vue理解的爐火純青的時(shí)候,你應(yīng)該思考怎么讓vue頁(yè)面騷氣起來(lái),下面就我個(gè)人在接觸Vue兩年的時(shí)間里,在實(shí)際工作中門(mén)戶網(wǎng)站在前端頁(yè)面交互應(yīng)用和技巧,炒幾道小菜給大家分享一哈,我把它封裝成一個(gè)項(xiàng)目vue-portal-webUI(github源碼),不敢說(shuō)是UI,但也是各種常見(jiàn)常遇到的情景吧,看懂代碼需要一些vue、axios、es6、scss基礎(chǔ)、數(shù)據(jù)基本上是mock,功能和場(chǎng)...

    lingdududu 評(píng)論0 收藏0
  • 庫(kù)&插件&框架&工具

    摘要:一些有用的一些有用的,包括轉(zhuǎn)換小箭頭三角形媒體查詢等中文指南是當(dāng)下最熱門(mén)的前端資源模塊化管理和打包工具。 nodejs 入門(mén) nodejs 入門(mén)教程,大家可以在 github 上提交錯(cuò)誤 2016 年最好用的表單驗(yàn)證庫(kù) SMValidator.js 前端表單驗(yàn)證工具分享 淺談前端線上部署與運(yùn)維 說(shuō)到前端部署,可能大多數(shù)前端工程師在工作中都是使用的公司現(xiàn)成的部署系統(tǒng),與SRE對(duì)接、一起完...

    Codeing_ls 評(píng)論0 收藏0
  • 庫(kù)&插件&框架&工具

    摘要:一些有用的一些有用的,包括轉(zhuǎn)換小箭頭三角形媒體查詢等中文指南是當(dāng)下最熱門(mén)的前端資源模塊化管理和打包工具。 nodejs 入門(mén) nodejs 入門(mén)教程,大家可以在 github 上提交錯(cuò)誤 2016 年最好用的表單驗(yàn)證庫(kù) SMValidator.js 前端表單驗(yàn)證工具分享 淺談前端線上部署與運(yùn)維 說(shuō)到前端部署,可能大多數(shù)前端工程師在工作中都是使用的公司現(xiàn)成的部署系統(tǒng),與SRE對(duì)接、一起完...

    xiaowugui666 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<