Javascript Vue路由器返回“无法重新定义属性:$Router”错误

Javascript Vue路由器返回“无法重新定义属性:$Router”错误,javascript,vue.js,vuejs2,vue-router,Javascript,Vue.js,Vuejs2,Vue Router,我正在使用vue.js创建一个小站点,我正在尝试设置一个迄今为止根本不起作用的vue路由。im获取无法重新定义属性:$router错误。 这是我的密码。 App.Vue 第1.vue页 <template> <div> <h3>sup</h3> </div> </template> <script> export default { name: 'ap

我正在使用vue.js创建一个小站点,我正在尝试设置一个迄今为止根本不起作用的vue路由。im获取无法重新定义属性:$router错误。 这是我的密码。 App.Vue

第1.vue页

 <template>
    <div>
        <h3>sup</h3>
    </div>
  </template>
  <script>
    export default {
      name: 'app',
      data () {
        return {
          msg: 'hello world'
        }
      }
    }
  </script>
  <style>

  </style>
main.js

import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)
new Vue({
  el: '#app',
  render: h => h(App)
})
const Page1 = { template: '<div>Page1</div>' }
const Page2 = { template: '<div>Page2</div>' }

const routes = [
  { path: '/page1', component: Page1 },
  { path: '/page2', component: Page1 }
]

const router = new VueRouter({
  routes // short for `routes: routes`
})

const app = new Vue({
  router
}).$mount('#app')
index.html

<!DOCTYPE html>
<script src="https://unpkg.com/vue/dist/vue.js"></script>
<script src="https://unpkg.com/vue-router/dist/vue-router.js"></script>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <title>hello-world</title>
  </head>
  <body>
    <div id="app"></div>
    <script src="/dist/build.js"></script>
  </body>
</html>

我以前使用过vue路由器,但遇到了这个问题。我觉得我遗漏了一些东西,但我不知道是什么,我们将非常感谢您提供的任何帮助

您的主Vue实例化重复了:

new Vue({
  el: '#app',
  render: h => h(App)
})
以及:

我认为这是问题的根源。我想它可以是这样的:

import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

const Page1 = { template: '<div>Page1</div>' }
const Page2 = { template: '<div>Page2</div>' }

const routes = [
  { path: '/page1', component: Page1 },
  { path: '/page2', component: Page1 }
]

const router = new VueRouter({
  routes // short for `routes: routes`
})

const app = new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

const Page1 = { template: '<div>Page1</div>' }
const Page2 = { template: '<div>Page2</div>' }

const routes = [
  { path: '/page1', component: Page1 },
  { path: '/page2', component: Page1 }
]

const router = new VueRouter({
  routes // short for `routes: routes`
})

const app = new Vue({
  router,
  render: h => h(App)
}).$mount('#app')

您的主Vue实例化重复:

new Vue({
  el: '#app',
  render: h => h(App)
})
以及:

我认为这是问题的根源。我想它可以是这样的:

import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

const Page1 = { template: '<div>Page1</div>' }
const Page2 = { template: '<div>Page2</div>' }

const routes = [
  { path: '/page1', component: Page1 },
  { path: '/page2', component: Page1 }
]

const router = new VueRouter({
  routes // short for `routes: routes`
})

const app = new Vue({
  router,
  render: h => h(App)
}).$mount('#app')
import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
Vue.use(VueRouter)

const Page1 = { template: '<div>Page1</div>' }
const Page2 = { template: '<div>Page2</div>' }

const routes = [
  { path: '/page1', component: Page1 },
  { path: '/page2', component: Page1 }
]

const router = new VueRouter({
  routes // short for `routes: routes`
})

const app = new Vue({
  router,
  render: h => h(App)
}).$mount('#app')

您已经复制了Vue实例

看看这个


您已经复制了Vue实例

看看这个