// Tutorial //

Using the Vue.js Devtools

Published on April 17, 2017
Default avatar
By Joshua Bemenderfer
Developer and author at DigitalOcean.
Using the Vue.js Devtools

While we believe that this content benefits our community, we have not yet thoroughly reviewed it. If you have any suggestions for improvements, please let us know by clicking the “report an issue“ button at the bottom of the tutorial.

Vue apps are a joy to write, and often fairly easy to debug. But do you know what would make debugging better? A dedicated way to hook into Vue apps and manipulate them from your browser’s devtools. What? Such a thing already exists? Oh. Well then. I suppose we’ll have to write about it now, won’t we.

Vue has a quality Chrome (and Firefox, sort of) extension that allows inspecting component trees, reviewing events, and time-travel debugging of Vuex states. These features make debugging ridiculously simple, even for fairly large apps.

Installation

For Chrome: The Vue devtools can be installed from the Chrome Web Store.

For Safari: A workaround is described for installing the extension in Safari on the Vue Devtools Wiki.

Component Tree

The devtools provide a DOM-style tree overview of all the components in your app, with information about each component’s data, properties, computed properties, and vuex bindings in the details pane.

Vue.js Devtools: Component tree pane.

Time-Travel Debugging

Hands down the most useful feature of the devtools is time-travel debugging for apps using Vuex. It allows you to observe, revert, and flatten your Vuex store over time. You could use this to revert to a previous state, replay events to get a second look at bugs, or inspect the various moving parts that go into making a Vuex store work in the details pane.

Vue.js Devtools: Vuex pane.

Event Log

The Event pane provides access to all events emitted by components in the app along with their names, sources, and payloads.

Vue.js Devtools: Event pane.

Enjoy your newfound debugging power! (Unless you already knew about it, in which case… well… Sorry to disappoint.)

If you’ve enjoyed this tutorial and our broader community, consider checking out our DigitalOcean products which can also help you achieve your development goals.

Learn more here


About the authors
Default avatar
Developer and author at DigitalOcean.

Still looking for an answer?

Was this helpful?
Leave a comment

This textbox defaults to using Markdown to format your answer.

You can type !ref in this text area to quickly search our full set of tutorials, documentation & marketplace offerings and insert the link!