UNPKG

vue-socials

Version:

Social media share buttons and counts for Vue.js

52 lines (45 loc) 1.2 kB
import { defineComponent } from 'vue'; import JSONP from '../../utils/jsonp.js'; import getSerialisedParams from '../../utils/getSerialisedParams.js'; import BaseCount from '../../mixins/BaseCount/BaseCount.js'; /** * Hey! * * SHatenaCount component used for Hatena social network * @link https://b.hatena.ne.jp/ */ /** * Share parameters for link */ var SHatenaCount = /* #__PURE__ */defineComponent({ name: 'SHatenaCount', mixins: [BaseCount('Hatena')], methods: { handleOKResponse: function handleOKResponse(count) { this.handleResult({ count: count }); this.handleCount(count); } }, mounted: function mounted() { var _this = this; var shareOptions = this.shareOptions; var url = shareOptions.url; var BASE_URL = 'https://bookmark.hatenaapis.com/count/entry'; var finalURL = "".concat(BASE_URL).concat(getSerialisedParams({ url: url })); this.handleLoading(true); JSONP(finalURL, function (err, data) { _this.handleLoading(false); if (err) { _this.handleError(err); } if (data) { _this.handleOKResponse(data); } }); } }); export default SHatenaCount;