2016-06-10 75 views
0

另一個顯示字段我有一個檢查器,其中包含對象列表具有名稱和類型,以及我的自定義數據。假設我想在類型屬性的選擇上顯示我的自定義數據庫。我可以用'when'來做到這一點,但只有它是具有特定路徑(如「attr/type」)的簡單字段。由於它在列表中,索引不同,所以我不知道如何指定路徑來檢查是否選擇了什麼類型。任何想法這個問題?基於JointJS

data: { 
         type : 'list', 
         item: { 
          type: 'object', 
          properties: { 
           'name' : { 
            type : 'text', 
            group : 'text', 
            label : 'Name', 
            index : 1 
           }, 
           type : { 
            type : 'select', 
            group : 'text', 
              label : 'Type', 
              options: ['Text','Number','Date','Select','Text Area'], 
            index : 2 
           }, 
           required : { 
            type : 'toggle', 
            group : 'validation', 
            label : 'Required', 
            index : 3 
           }, 
           'min-length' : { 
            type : 'number', 
            group : 'validation', 
            min : 0, 
            label : 'Min Length', 
            index : 4 
           }, 
           'max-length' : { 
            type : 'number', 
            group : 'validation', 
            min : 1, 
            label : 'Max Length', 
            index : 5 
           }, 
           'min' : { 
            type : 'number', 
            group : 'validation', 
            min : 0, 
            label : 'Min', 
            index : 6 
           }, 
           'max' : { 
            type : 'number', 
            group : 'validation', 
            min : 1, 
            label : 'Max', 
            index : 7 
           }, 
           'message' : { 
            type : 'text', 
            group : 'validation', 
            label : 'Error message', 
            index : 8 
           }, 
           'regex' : { 
            type : 'text', 
            group : 'validation', 
            label : 'Regex', 
            index : 9 
           }, 
           'options' : { 
            type : 'list', 
            item : { 
             type:'object', 
             properties: { 
              'text' : { 
               type : 'text', 
               label : 'Text', 
               index : 1 
              }, 
              'value' :{ 
               type : 'text', 
               label : 'Value', 
               index : 2 
              } 
             } 
            }, 
            group : 'validation', 
            label : 'Options', 
            index : 10 
           } 

          } 
         }, 
         group : 'validation', 
         label : 'Input', 
         index : 1 
        } 

回答

0

我擔心你需要爲名稱/類型集合中的每種類型創建一個字段。類似的問題在這裏得到解決:

operator: { 
       type: 'select', 
       options: ['over', 'in', 'out', 'atop', 'xor', 'arithmetic'], 
      }, 
      k1: { 
       type: 'number', 
       when: { eq: { operator: 'or' } } 
      }, 
      k2: { 
       type: 'number', 
       when: { eq: { operator: 'arithmetic' } } 
      }, 
      k3: { 
       type: 'number', 
       when: { eq: { operator: 'xor' } } 
      }, 
      k4: { 
       type: 'number', 
       when: { eq: { operator: 'over' } } 
      } 

編輯

很顯然這種方法不能在你的情況下使用...的XPath when: { eq: { 'labels/0/type': 'Number' } }是有效的,但沒用。迄今爲止這不是可行的,我們爲此設置了一個新問題。會很高興有類似when: { eq: { '*/type': 'Number' } }其中*可能是當前上下文,因此您將能夠獲得當前索引。

+0

你可以更詳細嗎?我編輯了我的帖子以提供更多信息。正如你所看到的,我想設置我的「正則表達式」字段只有當我的'類型'是'日期'或'數字'時纔會出現。謝謝 –

+0

任何建議解決方案先生? –