vue.jsでURLのシャープ#(hashbang)を消したい

vue.jsでvue-routerを使用する際にデフォルトではhash modeとなるためURLに#が付加されます。#を使用したURLが嫌な場合はmodeをhistoryに変更することでURLに#を付加しないようにすることができます。


modeを変更するにはVueRouterの指定で以下のようにモードを指定します。

const router = new VueRouter({
  mode: 'history',
  routes: [...]
})


historyモードではhistory.pushState APIを使用して
hash modeと同様にページリロードなしにURLの書き換えを行うことができます。