<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                ## 1.8 屬性 ### 1.8.1 引用屬性 屬性引用是模板中的重要一部分,Beetl 支持屬性同 JavaScript 的支持方式一樣,如下 - Beetl支持通過 `.` 號來訪問對象的的屬性,如果 JavaScript 一樣。如果 User 對象有個 getName() 方法,那么在模板中,可以通過 `${xxx.name}` 來訪問 - 如果模板變量是數組或者List類,這可以通過 `[]` 來訪問,如 `${userList[0]}` - 如果模板變量是Map類,這可以通過 `[]` 來訪問,如 `${map["name"]}` ,如果 key 值是字符串類型,也可以使用 `${map.name}` —— 但不建議這么使用,因為會讓模板閱讀者誤以為是一個 Pojo 對象 - Beetl 也支持Generic Get方式,即如果對象有一個 `public Object get(String key)` 方法,可以通過 `.` 號或者`[]` 來訪問,譬如 `${activityRecord.name}` 或者 `${activityRecord["name"] }` 都將調用 activityRecord 的 `get(String key)` 方法。如果對象既有具體屬性,又有Generic get(這種模型設計方式是不值得鼓勵),則以具體屬性優先級高。 - Beetl也可以通過 `[]` 來引用屬性,如 `${user["name"]}` 相當于 `${user.name}`。這跟 JavaScript 保持一致。但建議不這么做,因為容易讓閱讀模板的人誤認為這是一個Map類型。但好處是可以動態引用屬性,比如; ```java var attrName="age"; var age=user[attrName] ``` - 需要知道Java集合,數組長度,統一用虛擬屬性`~size`來表示 ```java var list=[1,2,3]; var size = list.~size ``` * 虛擬屬性:Beetl 還可以定義額外的對象屬性,而無需更改java對象,這叫著虛擬屬性,如,對于所有集合,數組,都有共同的虛擬屬性size.虛擬屬性是“.~”+虛擬屬性名 ```javascript template.binding("list",service.getUserList()); template.binding("pageMap",service.getPage()); //在模板里 總共 ${list.~size} <% for(user in list){ %> hello,${user.name}; <% } %> 當前頁${pageMap['page']},總共${pageMap["total"]} ``` ### 1.8.2 屬性賦值 Beetl2.7.0 開始支持對象賦值,如: ```javascript <% var user = .... user.name="joelli"; user.friends[0] = getNewUser(); user.map["name"] = "joelli"; %> ``` 賦值很少用于模板引擎,在規則引擎,腳本引擎使用場景倒是可以修改對象屬性。Beetl支持語法定制,可以根據使用場景禁止對象賦值。
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看