簡體   English   中英

gwt PlaceTokenizer實際做什么?

[英]what does the gwt PlaceTokenizer actually do?

我真的不明白PlaceTokenizer在做什么? 他是否將場所的類名稱轉換為字符串,以便gwt歷史記錄機制可以使用它將其放入瀏覽器的url中? 多數民眾贊成在我的理解,但我不確定這是否是正確的。

首先, PlaceTokenizer僅與PlaceHistoryMapper的生成器結合使用(即,如果您GWT.create()是擴展PlaceHistoryMapper的接口, PlaceHistoryMapper可以根據需要隨意在具體的類中實現該接口)。 生成器強制歷史標記 (URL中#后面的部分)由前綴和位置標記組成 該前綴用於與給定的PlaceTokenizer類型匹配,或者由令牌生成器上的@Prefix批注指定,或者默認為令牌生成器處理的場所的簡單名稱。

解析歷史記錄令牌handleCurrentHistory()在初始化時調用handleCurrentHistory()或使用瀏覽器的歷史記錄進行導航時),將前綴與PlaceTokenizer匹配並檢索到該令牌化程序的實例之后(如果使用,則從工廠獲取)一個PlaceHistoryMapperWithFactory ,或使用其默認的零參數構造函數創建),該位置令牌將傳遞到getPlace方法,並且令牌生成器應實例化與該位置令牌相對應的位置

序列化位置時(當您在應用程序中瀏覽PlaceController#goTo(Place)時),將根據位置的類型(與令牌化程序的通用參數匹配)檢索令牌生成器,並將位置分配給getToken ,預計將返回該地點的地點令牌 然后, PlaceHistoryHandler將在前綴之前添加並更新URL。

地點令牌可以是任何東西,但基於地點(其字段)所包含的數據,而不是其類型(反映為歷史令牌的前綴)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM