Я создаю приложение с NodeJS/Express для задней части и VueJS для Front с помощью Vue Cli и webpack.Vue Router Webpack Dot в Params
Я хотел бы знать, есть ли способ разрешить точку в параметрах для моих маршрутов.
Вот что я получаю, когда я стараюсь, не конфигой
Cannot GET /t/firstname.lastname
Вот мой /src/main.js
import Vue from 'vue'
import App from './App.vue'
import VueRouter from 'vue-router'
import VueResource from 'vue-resource'
import VueAutosize from 'vue-autosize'
import Main from './components/Main.vue'
import Signin from './components/Signin.vue'
// We want to apply VueResource and VueRouter
// to our Vue instance
Vue.use(VueRouter)
Vue.use(VueResource)
Vue.use(VueAutosize)
const router = new VueRouter({
history: true
})
// Pointing routes to the components they should use
router.map({
'/t/:person': {
component: Main
},
'/signin': {
component: Signin
}
})
router.beforeEach(function (transition) {
if (transition.to.path === '/signin' && window.localStorage.length !== 0) {
transition.redirect('/')
} else if (transition.to.path === '/' && window.localStorage.length === 0) {
transition.redirect('/signin')
} else {
transition.next()
}
})
// Any invalid route will redirect to home
router.redirect({
'*': '/404'
})
router.start(App, '#app')
Я считаю, что vue-router преобразует param в url в объект javascript, поэтому использование точки не допускается. Но я тестировал другие знаки препинания, и все в порядке. Вы можете использовать параметр regexp или optionnal, если хотите> [https://github.com/vuejs/vue-router/blob/9649929b3646954c7b59d149c570c3d0a96379c9/examples/route-matching/app.js](https://github.com/ vuejs/vue-router/blob/9649929b3646954c7b59d149c570c3d0a96379c9/examples/route-matching/app.js) –
@utiiz Вы нашли решение? У меня такая же проблема. –
Как это связано с Webpack? –