From c98eb645983e526f387c4cb6e08effb8313ef3a1 Mon Sep 17 00:00:00 2001
From: syuilo <syuilotan@yahoo.co.jp>
Date: Mon, 29 Apr 2019 14:37:58 +0900
Subject: [PATCH] Fix bug

---
 .../views/components/page-editor/page-editor.input.vue     | 7 +++++++
 src/client/app/common/views/components/ui/input.vue        | 6 +++++-
 2 files changed, 12 insertions(+), 1 deletion(-)

diff --git a/src/client/app/common/views/components/page-editor/page-editor.input.vue b/src/client/app/common/views/components/page-editor/page-editor.input.vue
index 1f3754252b..4e13840439 100644
--- a/src/client/app/common/views/components/page-editor/page-editor.input.vue
+++ b/src/client/app/common/views/components/page-editor/page-editor.input.vue
@@ -43,6 +43,13 @@ export default Vue.extend({
 	created() {
 		if (this.value.name == null) Vue.set(this.value, 'name', '');
 		if (this.value.inputType == null) Vue.set(this.value, 'inputType', 'string');
+
+		this.$watch('value.inputType', t => {
+			if (this.value.default != null) {
+				if (t === 'number') this.value.default = parseInt(this.value.default, 10);
+				if (t === 'string') this.value.default = this.value.default.toString();
+			}
+		});
 	},
 });
 </script>
diff --git a/src/client/app/common/views/components/ui/input.vue b/src/client/app/common/views/components/ui/input.vue
index 645062df28..a841ecca11 100644
--- a/src/client/app/common/views/components/ui/input.vue
+++ b/src/client/app/common/views/components/ui/input.vue
@@ -184,7 +184,11 @@ export default Vue.extend({
 			this.v = v;
 		},
 		v(v) {
-			this.$emit('input', v);
+			if (this.type === 'number') {
+				this.$emit('input', parseInt(v, 10));
+			} else {
+				this.$emit('input', v);
+			}
 
 			if (this.withPasswordMeter) {
 				if (v == '') {