Skip to content

Commit 2163399

Browse files
authored
refactor: use multi-word names for router views (#6809)
1 parent 66c9190 commit 2163399

File tree

11 files changed

+35
-30
lines changed

11 files changed

+35
-30
lines changed

packages/@vue/cli-plugin-router/__tests__/routerGenerator.spec.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ test('base', async () => {
99

1010
expect(files['src/router/index.js']).toBeTruthy()
1111
expect(files['src/router/index.js']).not.toMatch('history')
12-
expect(files['src/views/About.vue']).toBeTruthy()
13-
expect(files['src/views/Home.vue']).toBeTruthy()
12+
expect(files['src/views/AboutView.vue']).toBeTruthy()
13+
expect(files['src/views/HomeView.vue']).toBeTruthy()
1414
expect(files['src/App.vue']).toMatch('<router-link to="/">Home</router-link>')
1515
expect(files['src/App.vue']).not.toMatch('<script>')
1616
expect(files['src/App.vue']).toMatch('#nav a.router-link-exact-active')
@@ -29,8 +29,8 @@ test('history mode', async () => {
2929

3030
expect(files['src/router/index.js']).toBeTruthy()
3131
expect(files['src/router/index.js']).toMatch('history')
32-
expect(files['src/views/About.vue']).toBeTruthy()
33-
expect(files['src/views/Home.vue']).toBeTruthy()
32+
expect(files['src/views/AboutView.vue']).toBeTruthy()
33+
expect(files['src/views/HomeView.vue']).toBeTruthy()
3434
expect(files['src/App.vue']).toMatch('<router-link to="/">Home</router-link>')
3535
expect(files['src/App.vue']).not.toMatch('<script>')
3636
expect(files['src/App.vue']).toMatch('#nav a.router-link-exact-active')
@@ -54,8 +54,8 @@ test('use with Babel', async () => {
5454

5555
expect(files['src/router/index.js']).toBeTruthy()
5656
expect(files['src/router/index.js']).toMatch('component: () => import')
57-
expect(files['src/views/About.vue']).toBeTruthy()
58-
expect(files['src/views/Home.vue']).toBeTruthy()
57+
expect(files['src/views/AboutView.vue']).toBeTruthy()
58+
expect(files['src/views/HomeView.vue']).toBeTruthy()
5959
expect(files['src/App.vue']).toMatch('<router-link to="/">Home</router-link>')
6060
expect(files['src/App.vue']).not.toMatch('<script>')
6161
expect(files['src/App.vue']).toMatch('#nav a.router-link-exact-active')

packages/@vue/cli-plugin-router/generator/template-vue3/src/router/index.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -9,25 +9,25 @@ import { createRouter<%
99
%>, RouteRecordRaw<%
1010
}
1111
%> } from 'vue-router'
12-
import Home from '../views/Home.vue'
12+
import HomeView from '../views/HomeView.vue'
1313

1414
const routes<% if (hasTypeScript) { %>: Array<RouteRecordRaw><% } %> = [
1515
{
1616
path: '/',
17-
name: 'Home',
18-
component: Home
17+
name: 'home',
18+
component: HomeView
1919
},
2020
{
2121
path: '/about',
22-
name: 'About',
22+
name: 'about',
2323
// route level code-splitting
2424
// this generates a separate chunk (about.[hash].js) for this route
2525
// which is lazy-loaded when the route is visited.
2626
<%_ if (doesCompile) { _%>
27-
component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
27+
component: () => import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
2828
<%_ } else { _%>
2929
component: function () {
30-
return import(/* webpackChunkName: "about" */ '../views/About.vue')
30+
return import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
3131
}
3232
<%_ } _%>
3333
}

packages/@vue/cli-plugin-router/generator/template/src/router/index.js

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import VueRouter, { RouteConfig } from 'vue-router'
44
<%_ } else { _%>
55
import VueRouter from 'vue-router'
66
<%_ } _%>
7-
import Home from '../views/Home.vue'
7+
import HomeView from '../views/HomeView.vue'
88

99
Vue.use(VueRouter)
1010

@@ -15,20 +15,20 @@ const routes = [
1515
<%_ } _%>
1616
{
1717
path: '/',
18-
name: 'Home',
19-
component: Home
18+
name: 'home',
19+
component: HomeView
2020
},
2121
{
2222
path: '/about',
23-
name: 'About',
23+
name: 'about',
2424
// route level code-splitting
2525
// this generates a separate chunk (about.[hash].js) for this route
2626
// which is lazy-loaded when the route is visited.
2727
<%_ if (doesCompile) { _%>
28-
component: () => import(/* webpackChunkName: "about" */ '../views/About.vue')
28+
component: () => import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
2929
<%_ } else { _%>
3030
component: function () {
31-
return import(/* webpackChunkName: "about" */ '../views/About.vue')
31+
return import(/* webpackChunkName: "about" */ '../views/AboutView.vue')
3232
}
3333
<%_ } _%>
3434
}

packages/@vue/cli-plugin-router/generator/template/src/views/Home.vue renamed to packages/@vue/cli-plugin-router/generator/template/src/views/HomeView.vue

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
import HelloWorld from '@/components/HelloWorld.vue'
1616

1717
export default {
18-
name: 'Home',
18+
name: 'HomeView',
1919
components: {
2020
HelloWorld
2121
}

packages/@vue/cli-plugin-typescript/__tests__/tsGenerator.spec.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@ test('generate files', async () => {
1717
expect(files['src/main.ts']).toBeTruthy()
1818
expect(files['src/main.js']).toBeFalsy()
1919
expect(files['src/App.vue']).toMatch('<script lang="ts">')
20-
// checks that the Home.vue file has not been created, even empty
21-
expect(Object.prototype.hasOwnProperty.call(files, 'src/views/Home.vue')).toBeFalsy()
20+
// checks that the HomeView.vue file has not been created, even empty
21+
expect(Object.prototype.hasOwnProperty.call(files, 'src/views/HomeView.vue')).toBeFalsy()
2222
})
2323

2424
test('classComponent', async () => {
@@ -92,7 +92,7 @@ test('use with router', async () => {
9292
options: {}
9393
}
9494
])
95-
expect(files['src/views/Home.vue']).toMatch('Welcome to Your Vue.js + TypeScript App')
95+
expect(files['src/views/HomeView.vue']).toMatch('Welcome to Your Vue.js + TypeScript App')
9696
})
9797

9898
test('tsconfig.json should be valid json', async () => {

packages/@vue/cli-plugin-typescript/generator/template-vue3/src/views/Home.vue renamed to packages/@vue/cli-plugin-typescript/generator/template-vue3/src/views/HomeView.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
extend: '@vue/cli-plugin-router/generator/template/src/views/Home.vue'
2+
extend: '@vue/cli-plugin-router/generator/template/src/views/HomeView.vue'
33
when: "rootOptions.plugins && rootOptions.plugins['@vue/cli-plugin-router']"
44
replace:
55
- !!js/regexp /Welcome to Your Vue\.js App/
@@ -17,7 +17,7 @@ import { defineComponent } from 'vue';
1717
import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src
1818
1919
export default defineComponent({
20-
name: 'Home',
20+
name: 'HomeView',
2121
components: {
2222
HelloWorld,
2323
},
@@ -31,7 +31,7 @@ import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src
3131
HelloWorld,
3232
},
3333
})
34-
export default class Home extends Vue {}
34+
export default class HomeView extends Vue {}
3535
<%_ } _%>
3636
</script>
3737
<%# END_REPLACE %>

packages/@vue/cli-plugin-typescript/generator/template/src/views/Home.vue renamed to packages/@vue/cli-plugin-typescript/generator/template/src/views/HomeView.vue

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
extend: '@vue/cli-plugin-router/generator/template/src/views/Home.vue'
2+
extend: '@vue/cli-plugin-router/generator/template/src/views/HomeView.vue'
33
when: "rootOptions.plugins && rootOptions.plugins['@vue/cli-plugin-router']"
44
replace:
55
- !!js/regexp /Welcome to Your Vue\.js App/
@@ -17,7 +17,7 @@ import Vue from 'vue';
1717
import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src
1818
1919
export default Vue.extend({
20-
name: 'Home',
20+
name: 'HomeView',
2121
components: {
2222
HelloWorld,
2323
},
@@ -31,7 +31,7 @@ import HelloWorld from '@/components/HelloWorld.vue'; // @ is an alias to /src
3131
HelloWorld,
3232
},
3333
})
34-
export default class Home extends Vue {}
34+
export default class HomeView extends Vue {}
3535
<%_ } _%>
3636
</script>
3737
<%# END_REPLACE %>

packages/@vue/cli-ui-addon-webpack/.eslintrc.js

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,5 +15,8 @@ module.exports = {
1515
babelOptions: {
1616
cwd: __dirname
1717
}
18+
},
19+
rules: {
20+
'vue/multi-word-component-names': 'warn'
1821
}
1922
}

packages/@vue/cli-ui-addon-widgets/.eslintrc.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,8 @@ module.exports = {
99
],
1010
rules: {
1111
'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
12-
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'
12+
'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
13+
'vue/multi-word-component-names': 'warn'
1314
},
1415
parserOptions: {
1516
parser: '@babel/eslint-parser',

packages/@vue/cli-ui/.eslintrc.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,8 @@ module.exports = {
1919
'vue/html-self-closing': 'error',
2020
'vue/no-use-v-if-with-v-for': 'warn',
2121
'vue/no-unused-vars': 'warn',
22-
'vue/return-in-computed-property': 'warn'
22+
'vue/return-in-computed-property': 'warn',
23+
'vue/multi-word-component-names': 'warn'
2324
},
2425

2526
parserOptions: {

0 commit comments

Comments
 (0)