<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>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                Haxe 附帶了一個標準的模板系統,使用被一個輕量的 haxe.Template 類解釋的簡單的語法。 模板是一個字符串或者一個文件,用來產生任何種類的取決于輸入內容的字符串輸出。這是一個小的模板例子: ~~~ class Main { static function main() { var sample = "My name is <strong>::name::</strong>, <em>::age::</em> years old"; var user = {name:"Mark", age:30}; var template = new haxe.Template(sample); var output = template.execute(user); trace(output); } } ~~~ 控制臺會輸出 : ~~~ The console will trace My name is Mark, 30 years old. ~~~ ## 表達式 * **::name::** 變量名 * **::expr.field::** 字段訪問 * **::(expr)::** 表達式 expr 被評估 * **::(e1 op e2)::** 對 e1 和 e2 應用操作符 op * **::(135)::** 整數 135 。Float類型常量是不允許的 ## 條件 可以使用 ::if flag1:: 測試條件。可選地,條件可以使用 ::elseif flag2:: 或者 ::else:: 。關閉條件使用 ::end:: 。 ~~~ ::if isValid:: valid ::else:: invalid ::end:: ~~~ 運算符可以被使用,但是不處理運算符優先級。因此需要需要把每個操作放入括號 () 。目前,如下的運算符被允許:+,-,*,/,>,<,>=,<=,==,!=,&&,和 || 。 例如,::((1 + 3) == (2 + 2)):: 會顯示 true 。 ~~~ ::if (points == 10):: Great! ::end:: ~~~ 要比較一個字符串,使用雙引號 " 到模板中。 ~~~ ::if (name == "Mark"):: Hi Mark ::end:: ~~~ ## 迭代 通過使用 ::foreach:: 迭代一個結構。結束循環使用 ::end:: 。 ~~~ <table> <tr> <th>Name</th> <th>Age</th> </tr> ::foreach users:: <tr> <td>::name::</td> <td>::age::</td> </tr> ::end:: </table> ~~~ ## 子模板 要在一個模板中包括另一個模板,傳遞子模板結果字符串作為一個參數。 ~~~ var users = [{name:"Mark", age:30}, {name:"John", age:45}]; var userTemplate = new haxe.Template("::foreach users:: ::name::(::age::) ::end::"); var userOutput = userTemplate.execute({users: users}); var template = new haxe.Template("The users are ::users::"); var output = template.execute({users: userOutput}); trace(output); ~~~ 控制臺會輸出 : ~~~ The users are Mark(30) John(45). ~~~ ## 模板宏 當部分模板被渲染時要調用自定義的函數,提供一個 宏對象到 Template.execute 的參數即可。鍵會作為模板變量名,值引用一個應該返回字符串的回調函數。這個宏函數的第一個參數總是一個 resolve() 方法,后跟指定的參數。 resolve 函數可以被調用來從模板上下文中取回值。如果宏沒有這個字段,結果將是未指定的。 下面的例子傳遞它本身作為宏函數上下文,并從模板執行 display: ~~~ class Main { static function main() { new Main(); } public function new() { var user = {name:"Mark", distance:3500}; var sample = "The results: $$display(::user::,::time::)"; var template = new haxe.Template(sample); var output = template.execute({user:user, time: 15}, this); trace(output); } function display(resolve:String->Dynamic, user:User, time:Int) { return user.name + " ran " + (user.distance/1000) + " kilometers in " + time + " minutes"; } } typedef User = {name:String, distance:Int} ~~~ 控制臺會輸出如下結果: ~~~ Mark ran 3.5 kilometers in 15 minutes. ~~~ ## 全局 使用 Template.globals 對象來存儲可以被貫穿整個 haxe.Template 實例中應用的值。它的優先級低于 Template.execute 的上下文參數。 ## 利用資源 要從代碼中分離內容,考慮使用資源嵌入系統(第8.4節)。存放模板內容到一個新的文檔,叫做 sample.mtt ,添加 -resource sample.mtt@my_sample 到編譯器參數,使用 haxe.Resource.getString 來檢索內容。 ~~~ class Main { static function main() { var sample = haxe.Resource.getString("my_sample"); var user = {name:"Mark", age:30}; var template = new haxe.Template(sample); var output = template.execute(user); trace(output); } } ~~~ 當在服務端運行模板系統,你可以簡單的使用 neko.Lib.print 或者 php.Lib.print ,而不是使用 trace 來顯示 HTML 模板給用戶。 查看 Template API 詳細了解它的方法。
                  <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>

                              哎呀哎呀视频在线观看