gpt4 book ai didi

angularjs - Angular UI 路由器无法使用 Internet Explorer 9 进行解析

转载 作者:行者123 更新时间:2023-12-02 22:26:50 25 4
gpt4 key购买 nike

我有一个 Angular v1.3 应用程序,它使用 Angular ui-router v0.2.13 进行所有路由。该网站在所有浏览器上都能正常运行,包括 IE 10 和 IE 11,但不能在 IE 9 上运行(我们决定不再使用 IE8,据我所知 v1.3 无论如何也不支持 IE8)。尽管我尽了最大努力,IE 9 仍不断解析为我的 $stateProvider's otherwise路线(设置为 /*path ,可能是罪魁祸首,因此我出于测试目的禁用了该路线)。

为了尝试获取任何其他路由进行解析,我尝试设置 $locationProvider.html5Mode(false) ,修改$locationProvider.hashPrefix ,更改了 <base href="/" />各种 URL,包括 <base href="/#!"/> ,我什至包括了 xmlns:ng="http://angularjs.org"<html>标签以进行良好测量。无论我如何尝试,IE 9 都会不断尝试解析我的 otherwise路线,或者如果该路线被禁用则什么也不做。顺便说一句,我的主页路由 URL 设置为 / .

随着发布截止日期的临近,我一直在忙于编写代码,所以我将是第一个承认我可能忽略了一些明显的事情的人。谁能提供任何其他提示或技巧来使 ui-router 在 IE 9 中正确解析?

最佳答案

我们使用如下内容:

<!DOCTYPE html>
<html lang="fr" xmlns="http://www.w3.org/1999/xhtml" ng-csp xml:lang="fr-CA">

//...
var app = angular.module('YourApp', [...]);
angular.bootstrap(document, ['YourApp'], {strictDi: true})

//...
angular.module('YourApp').config(['$stateProvider', '$urlRouterProvider', '$locationProvider',
function ($stateProvider, $urlRouterProvider, $locationProvider) {
$locationProvider.html5Mode(false);
$locationProvider.hashPrefix('!');

$urlRouterProvider.otherwise('/');

$stateProvider
.state('home', {
url: '/',
cache: false,
controller: 'HomeController as vm'
})
.state('anon', {
url: '/info',
controller: 'AnonController as vm'
})

//等等...

关于angularjs - Angular UI 路由器无法使用 Internet Explorer 9 进行解析,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29130225/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com