@@ -8,7 +8,7 @@
@mousedown="handleMouseDown"
@touchmove="handleChange"
@touchstart="handleChange">
-
@@ -41,6 +41,10 @@ export default {
handleChange (e, skip) {
!skip && e.preventDefault()
var container = this.$refs.container
+ if (!container) {
+ // for some edge cases, container may not exist. see #220
+ return
+ }
var containerWidth = container.clientWidth
var xOffset = container.getBoundingClientRect().left + window.pageXOffset
diff --git a/src/components/common/EditableInput.vue b/src/components/common/EditableInput.vue
index 62c6aedf..010e5af3 100644
--- a/src/components/common/EditableInput.vue
+++ b/src/components/common/EditableInput.vue
@@ -1,14 +1,14 @@
- {{label}}
+ {{labelSpanText}}
{{desc}}
@@ -18,6 +18,7 @@ export default {
name: 'editableInput',
props: {
label: String,
+ labelText: String,
desc: String,
value: [String, Number],
max: Number,
@@ -40,6 +41,12 @@ export default {
return v
}
}
+ },
+ labelId () {
+ return `input__label__${this.label}__${Math.random().toString().slice(2, 5)}`
+ },
+ labelSpanText () {
+ return this.labelText || this.label
}
},
methods: {
diff --git a/src/components/common/Hue.vue b/src/components/common/Hue.vue
index f7d5c12b..07276632 100644
--- a/src/components/common/Hue.vue
+++ b/src/components/common/Hue.vue
@@ -1,12 +1,17 @@
-
-
@@ -65,6 +70,10 @@ export default {
!skip && e.preventDefault()
var container = this.$refs.container
+ if (!container) {
+ // for some edge cases, container may not exist. see #220
+ return
+ }
var containerWidth = container.clientWidth
var containerHeight = container.clientHeight
diff --git a/src/components/common/Saturation.vue b/src/components/common/Saturation.vue
index 3fc4c34b..75c16a7b 100644
--- a/src/components/common/Saturation.vue
+++ b/src/components/common/Saturation.vue
@@ -1,5 +1,5 @@
-