10 changed files with 111 additions and 71 deletions
Before Width: | Height: | Size: 6.7 KiB |
@ -1,58 +0,0 @@ |
|||||||
<template> |
|
||||||
<div class="hello"> |
|
||||||
<h1>{{ msg }}</h1> |
|
||||||
<p> |
|
||||||
For a guide and recipes on how to configure / customize this project,<br> |
|
||||||
check out the |
|
||||||
<a href="https://cli.vuejs.org" target="_blank" rel="noopener">vue-cli documentation</a>. |
|
||||||
</p> |
|
||||||
<h3>Installed CLI Plugins</h3> |
|
||||||
<ul> |
|
||||||
<li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-babel" target="_blank" rel="noopener">babel</a></li> |
|
||||||
<li><a href="https://github.com/vuejs/vue-cli/tree/dev/packages/%40vue/cli-plugin-eslint" target="_blank" rel="noopener">eslint</a></li> |
|
||||||
</ul> |
|
||||||
<h3>Essential Links</h3> |
|
||||||
<ul> |
|
||||||
<li><a href="https://vuejs.org" target="_blank" rel="noopener">Core Docs</a></li> |
|
||||||
<li><a href="https://forum.vuejs.org" target="_blank" rel="noopener">Forum</a></li> |
|
||||||
<li><a href="https://chat.vuejs.org" target="_blank" rel="noopener">Community Chat</a></li> |
|
||||||
<li><a href="https://twitter.com/vuejs" target="_blank" rel="noopener">Twitter</a></li> |
|
||||||
<li><a href="https://news.vuejs.org" target="_blank" rel="noopener">News</a></li> |
|
||||||
</ul> |
|
||||||
<h3>Ecosystem</h3> |
|
||||||
<ul> |
|
||||||
<li><a href="https://router.vuejs.org" target="_blank" rel="noopener">vue-router</a></li> |
|
||||||
<li><a href="https://vuex.vuejs.org" target="_blank" rel="noopener">vuex</a></li> |
|
||||||
<li><a href="https://github.com/vuejs/vue-devtools#vue-devtools" target="_blank" rel="noopener">vue-devtools</a></li> |
|
||||||
<li><a href="https://vue-loader.vuejs.org" target="_blank" rel="noopener">vue-loader</a></li> |
|
||||||
<li><a href="https://github.com/vuejs/awesome-vue" target="_blank" rel="noopener">awesome-vue</a></li> |
|
||||||
</ul> |
|
||||||
</div> |
|
||||||
</template> |
|
||||||
|
|
||||||
<script> |
|
||||||
export default { |
|
||||||
name: 'HelloWorld', |
|
||||||
props: { |
|
||||||
msg: String |
|
||||||
} |
|
||||||
} |
|
||||||
</script> |
|
||||||
|
|
||||||
<!-- Add "scoped" attribute to limit CSS to this component only --> |
|
||||||
<style scoped> |
|
||||||
h3 { |
|
||||||
margin: 40px 0 0; |
|
||||||
} |
|
||||||
ul { |
|
||||||
list-style-type: none; |
|
||||||
padding: 0; |
|
||||||
} |
|
||||||
li { |
|
||||||
display: inline-block; |
|
||||||
margin: 0 10px; |
|
||||||
} |
|
||||||
a { |
|
||||||
color: #42b983; |
|
||||||
} |
|
||||||
</style> |
|
@ -0,0 +1,33 @@ |
|||||||
|
<template> |
||||||
|
<button class="share-button" :class="className" @click="openShareWindow"> |
||||||
|
<i class="share-button__icon">123</i> |
||||||
|
<span class="share-button__text" v-if="btnText">{{btnText}}</span> |
||||||
|
</button> |
||||||
|
</template> |
||||||
|
|
||||||
|
<script> |
||||||
|
import { getDocumentHref, eventEmit } from "../helpers"; |
||||||
|
export default { |
||||||
|
name: "twitter-button", |
||||||
|
props: { |
||||||
|
className: { type: String }, |
||||||
|
pageUrl: { type: String, deflate: getDocumentHref }, |
||||||
|
btnText: { type: String, default: "Twitter" }, |
||||||
|
hasIcon: { type: Boolean, default: true } |
||||||
|
}, |
||||||
|
methods: { |
||||||
|
openShareWindow: function() { |
||||||
|
console.log(eventEmit(this, { name: "qwee" })); |
||||||
|
const url = |
||||||
|
"https://twitter.com/share?url=https://vuejs.org/&text=Super-test"; |
||||||
|
// return window.open(url, "__blank"); |
||||||
|
return window.open( |
||||||
|
url, |
||||||
|
"Share this", |
||||||
|
"width=500,height=700,left=100,top=200,toolbar=no,menubar=no,scrollbars=no" |
||||||
|
); |
||||||
|
} |
||||||
|
} |
||||||
|
}; |
||||||
|
</script> |
||||||
|
|
@ -0,0 +1,8 @@ |
|||||||
|
/** |
||||||
|
* Trigger an event. |
||||||
|
* |
||||||
|
* @param {object} vm - VueComponent. |
||||||
|
* @param {object} option - Custom options. |
||||||
|
* @return {object} - Event. |
||||||
|
*/ |
||||||
|
export const eventEmit = (vm, option) => vm.$emit("onClick", { ...option }); |
@ -0,0 +1,6 @@ |
|||||||
|
/** |
||||||
|
* Get href for page. |
||||||
|
* |
||||||
|
* @returns {string} - page href. |
||||||
|
*/ |
||||||
|
export const getDocumentHref = () => document.location.href; |
Loading…
Reference in new issue