iOS Chrome 和 AngularJS 不在 HEAD 中执行控制器

Posted

技术标签:

【中文标题】iOS Chrome 和 AngularJS 不在 HEAD 中执行控制器【英文标题】:iOS Chrome and AngularJS does not execute controller in HEAD 【发布时间】:2015-02-06 13:28:19 【问题描述】:

这种情况只发生在 ios 版 Chrome 中。 我在 html 中有类似的东西。

<html ng-app="MY_APP">
<head ng-conroller="headCtrl as head">
<title ng-bind="head.title"></title>
... libraries...
<link rel="stylesheet" type="text/css" ng-href="./css/ head.style .css"/>
</head>
<body ng-controller="mainCrtl as main">
</body>
</html>

问题是 headCrtl 没有在 Chrome for iOS 中执行。

MY_APP.controller('headCtrl', ['$rootScope', '$scope', '$location', function ($rootScope, $scope, $location) 

    var vm = this;

    var host = $location.host();

    if (host.indexOf('site1') > -1) 
        vm.style = 'site1';
     else
    if (host.indexOf('site2') > -1) 
        vm.style = 'site2';
    

    $rootScope.brandCode = vm.style;

    vm.title = 'Straps';


]);

感谢您的建议。

【问题讨论】:

嗨,我也有同样的问题。你知道为什么它不工作吗?如果你有解决方案告诉我:) 【参考方案1】:

您的视图文件中有错字。应该是:

<head ng-controller="headCtrl as head">

不是

<head ng-conroller="headCtrl as head">

【讨论】:

以上是关于iOS Chrome 和 AngularJS 不在 HEAD 中执行控制器的主要内容,如果未能解决你的问题,请参考以下文章

iOS Web-App从Chrome中的数据库加载,但不在Safari中加载

如何在 iOS 上显示从我的 angularjs 应用程序发送的 PDF(Blob)

angularjs和jquery冲突导致chrome停止响应

如何在 Chrome 浏览器中调试 AngularJS [关闭]

为啥我不在角度控制器中注入服务?

控制器经常被调用,但仅限于 iOS 上的 Chrome