sharkey/src/client/app/common/views/directives/particle.ts

27 lines
544 B
TypeScript
Raw Normal View History

2018-12-16 10:20:46 +09:00
import Particle from '../components/particle.vue';
export default {
bind(el, binding, vn) {
if (vn.context.$store.state.device.reduceMotion) return;
2018-12-16 10:20:46 +09:00
el.addEventListener('click', () => {
if (binding.value === false) return;
2018-12-16 10:20:46 +09:00
const rect = el.getBoundingClientRect();
const x = rect.left + (el.clientWidth / 2);
const y = rect.top + (el.clientHeight / 2);
const particle = new Particle({
parent: vn.context,
propsData: {
x,
y
}
}).$mount();
document.body.appendChild(particle.$el);
});
}
};