Results 1 to 3 of 3

Thread: Optional and mandatory config properties - TypeScript related,

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    Sencha User
    Join Date
    Dec 2007
    Posts
    168
    Vote Rating
    4
      0  

    Default Optional and mandatory config properties - TypeScript related,

    I am in the process of creating a TypeScript type library for Sencha Touch using JDduck json files. My intention is to define one TypeScript config class as a buddy for each main Sencha Touch class also declared in TypeScript.

    The problem is that I started this process with an assumption that all properties in my XxxxxConfig class should be optional (TypeScript has a special syntax for optional class fields). However I notice that for a majority of ST classes the constructor method config parameter is mandatory, which implies some config properties must be supplied on class create.

    Looking at the JSON attributes for each config property I cannot see an attribute that indicates which config properties must be supplied during class create.

    Can anyone explain this ambiguity?

  2. #2
    Sencha User mitchellsimoens's Avatar
    Join Date
    Mar 2007
    Location
    Gainesville, FL
    Posts
    40,062
    Vote Rating
    1391
      0  

    Default

    Example of a class that can't be created without a config object?
    Mitchell Simoens @LikelyMitch
    Modus Create, Senior Frontend Engineer
    ________________
    Need any sort of Ext JS help? Modus Create is here to help!

    Check out my GitHub:
    https://github.com/mitchellsimoens

  3. #3
    Sencha User
    Join Date
    Dec 2007
    Posts
    168
    Vote Rating
    4
      0  

    Default

    Quote Originally Posted by mitchellsimoens View Post
    Example of a class that can't be created without a config object?
    Here are some I found by inspecting the JSDuck documentation json.

    Ext.Component
    Ext.data.reader.Reader
    Ext.slider.Slider
    Ext.Map
    Ext.layout.Abstract

    Since posting my OP I can now see that the high proportion of classes having a non optional config constructor method parameter is because the list of classes includes some common base classes such as Component and Layout.Abstract.

    Even so my original confusion remains... is it possible to identify which config properties are mandatory for a class that has a mandatory config constructor parameter?

    The basis for my question is the following in the JSDuck generated doc json. See option "optional": false,
    PHP Code:
        "method": [
          {
            
    "tagname""method",
            
    "name""constructor",
            
    "owner""Ext.data.reader.Reader",
            
    "doc""\n",
            
    "params": [
              {
                
    "type""Object",
                
    "name""config",
                
    "doc""\n",
                
    "optional"false,
                
    "default"null,
                
    "properties": [

                ],
                
    "html_type""Object"
              
    }
            ], 

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •