Procházet zdrojové kódy

Changed checkbox -value to -exp, simplified matchValue

fergaldoyle před 11 roky
rodič
revize
722094eefc

+ 3 - 14
src/directives/model/checkbox.js

@@ -5,8 +5,8 @@ module.exports = {
   bind: function () {
     var self = this
     var el = this.el
-    var trueExp = this._checkParam('true-value')
-    var falseExp = this._checkParam('false-value')
+    var trueExp = this._checkParam('true-exp')
+    var falseExp = this._checkParam('false-exp')
 
     function getValue () {
       var val = el.checked
@@ -22,21 +22,10 @@ module.exports = {
 
     function matchValue (value) {
       var trueValue = true
-      var falseValue = false
-
       if (trueExp !== null) {
         trueValue = self.vm.$eval(trueExp)
       }
-      if (falseExp !== null) {
-        falseValue = self.vm.$eval(falseExp)
-      }
-      if (trueValue === value) {
-        return true
-      } else if (falseValue === value) {
-        return false
-      } else {
-        return null
-      }
+      return trueValue === value
     }
     this._matchValue = matchValue
 

+ 2 - 2
test/unit/specs/directives/model_spec.js

@@ -141,7 +141,7 @@ if (_.inBrowser) {
       expect(vm.test).toBe(true)
     })
 
-    it('checkbox true-value false-value', function (done) {
+    it('checkbox expression', function (done) {
       var vm = new Vue({
         el: el,
         data: {
@@ -149,7 +149,7 @@ if (_.inBrowser) {
           expression1: 'aTrueValue',
           expression2: 'aFalseValue'
         },
-        template: '<input type="checkbox" v-model="test" true-value="expression1" false-value="expression2">'
+        template: '<input type="checkbox" v-model="test" true-exp="expression1" false-exp="expression2">'
       })
       expect(vm.test).toBe('')
       el.firstChild.click()