Flex: остановить TabNavigator от добавления #HASH к URL - PullRequest
2 голосов
/ 22 декабря 2009

Хорошо, у меня есть компонент TabNavigator, который добавляет хеш (#) к URL. Я должен предотвратить это. У меня установлено значение historyManagementEnabled = "false", но он все еще добавляет # к URL-адресу при инициализации.

Причина, по которой добавление этого хэша является такой проблемой, заключается в том, что я использую .htaccess, чтобы дать моему URL симпатичный URL, например domain.com/designer/category/product/id, когда страница действительно расположена на domain.com /product.php?pid=id Поэтому, чтобы мои ресурсы загружались правильно, мне пришлось добавить базовый тег, подобный этому:

<base href="http://www.MYDOMAIN.com/" />

Но поскольку у меня установлен этот базовый тег, всякий раз, когда мое гибкое приложение добавляет # к URL, страница автоматически перенаправляется на домашнюю страницу.

Так что мне действительно нужно найти способ остановить TabNavigator от добавления # к URL.

Есть идеи?

Спасибо !!

Ответы [ 2 ]

3 голосов
/ 22 декабря 2009

Отключите управление историей в настройках проекта Flex Builder (в настройках компилятора Flex).

1 голос
/ 22 декабря 2009

Мне удалось это исправить, расширив TabNavigator и переопределив следующие функции:

package
{
    import mx.containers.TabNavigator;

    public class MyTabNav extends TabNavigator
    {
        public function MyTabNav()
        {
            super();
        }

        override public function get historyManagementEnabled():Boolean
        {
            return false;
        }

        override public function set historyManagementEnabled(value:Boolean):void
        {
            return;
        }
    }
}
...