Kuma/src/mixins/mobile.js
Matthew Nickson 8a92054c2b
Added JSDoc to ESLint (#3529)
* Added JSDoc to eslint rules

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Fixed JSDoc eslint errors

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>

* Update the check-linters workflow to Node.js 20

---------

Signed-off-by: Matthew Nickson <mnickson@sidingsmedia.com>
Co-authored-by: Louis Lam <louislam@users.noreply.github.com>
2023-08-11 15:46:41 +08:00

44 lines
864 B
JavaScript

export default {
data() {
return {
windowWidth: window.innerWidth,
};
},
created() {
window.addEventListener("resize", this.onResize);
this.updateBody();
},
methods: {
/**
* Handle screen resize
* @returns {void}
*/
onResize() {
this.windowWidth = window.innerWidth;
this.updateBody();
},
/**
* Add css-class "mobile" to body if needed
* @returns {void}
*/
updateBody() {
if (this.isMobile) {
document.body.classList.add("mobile");
} else {
document.body.classList.remove("mobile");
}
}
},
computed: {
isMobile() {
return this.windowWidth <= 767.98;
},
},
};