Skip to content

Commit cb1d3e4

Browse files
committed
Initial setup for vue 3.
+ upgraded to vue 3. + replaced node-sass with sass package. + updated version to 0.2.0 + Made toggle work with vue 3 syntax.
1 parent 6b54aa9 commit cb1d3e4

File tree

5 files changed

+421
-518
lines changed

5 files changed

+421
-518
lines changed

package.json

Lines changed: 8 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,24 @@
11
{
22
"name": "vue-toggle-component",
3-
"version": "0.1.3",
3+
"version": "0.2.0",
44
"scripts": {
55
"serve": "vue-cli-service serve",
66
"build": "vue-cli-service build",
77
"lint": "vue-cli-service lint"
88
},
99
"dependencies": {
10-
"core-js": "^3.11.0",
11-
"node-sass": "^5.0.0",
12-
"sass-loader": "^11.0.1",
13-
"vue": "^2.6.12"
10+
"sass": "^1.32.11",
11+
"sass-loader": "10.1.1",
12+
"vue": "^3.0.11"
1413
},
1514
"devDependencies": {
16-
"@vue/cli-plugin-babel": "~4.5.0",
15+
"@vue/cli-plugin-babel": "^4.5.12",
1716
"@vue/cli-plugin-eslint": "~4.5.0",
18-
"@vue/cli-service": "~4.5.0",
17+
"@vue/cli-service": "^4.5.12",
18+
"@vue/compiler-sfc": "^3.0.11",
1919
"babel-eslint": "^10.1.0",
2020
"eslint": "^6.7.2",
21-
"eslint-plugin-vue": "^6.2.2",
22-
"vue-template-compiler": "^2.6.11"
21+
"eslint-plugin-vue": "^6.2.2"
2322
},
2423
"eslintConfig": {
2524
"root": true,

src/App.vue

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,13 @@
11
<template>
2-
<div id="app">
3-
<vue-toggle title="Toggle me" id="1" />
4-
</div>
2+
<VueToggle title="Toggle me" id="1"/>
53
</template>
64

75
<script>
8-
import VueToggle from "@vue-toggle-component";
6+
import VueToggle from "./components/VueToggle";
97
108
export default {
11-
name: 'App',
12-
components: { VueToggle },
9+
name: 'App',
10+
components: {VueToggle}
1311
}
12+
1413
</script>

src/components/VueToggle.vue

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
<template>
22
<section class="wrapper" :title="title">
3-
<input :id="id" :name="name" v-model="toggled" class="toggle" type="checkbox" @click="toggled = !toggled" />
4-
<label :for="id" class="toggler" />
5-
<span class="title" v-text="title" @click="toggled = !toggled" />
3+
<input :id="id" :name="name" v-model="toggled" class="toggle" type="checkbox" @click="toggled = !toggled"/>
4+
<label :for="id" class="toggler"/>
5+
<span class="title" v-text="title" @click="toggled = !toggled"/>
66
</section>
77
</template>
88

99
<script>
10-
1110
export default {
1211
name: 'VueToggle',
1312
1413
props: {
15-
id: { type: String, required: true },
16-
name: { type: [String, Boolean], default: false },
17-
title: { type: String, required: true },
18-
toggled: { type: Boolean, default: false },
14+
id: {type: String, required: true},
15+
name: {type: [String, Boolean], default: false},
16+
title: {type: String, required: true},
17+
toggled: {type: Boolean, default: false},
1918
},
2019
}
2120
</script>

src/main.js

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,4 @@
1-
import Vue from 'vue'
1+
import {createApp} from "vue";
22
import App from './App.vue'
33

4-
Vue.config.productionTip = false
5-
6-
new Vue({ render: h => h(App) }).$mount('#app')
4+
createApp(App).mount('#app');

0 commit comments

Comments
 (0)