Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/svg/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 角度ui路由器不工作_Javascript_Angularjs_Angular Ui Router - Fatal编程技术网

Javascript 角度ui路由器不工作

Javascript 角度ui路由器不工作,javascript,angularjs,angular-ui-router,Javascript,Angularjs,Angular Ui Router,我有index.html,我可以加载它,但angular ui router没有将它路由到正确的templateURl(app.html与index.html位于同一个Derectoy中)。我已经添加了所有必需的脚本,但它不工作 <!DOCTYPE html> <html ng-app ="mustReadAlgo"> <head> <title>AngularJS Basic Example</title>

我有index.html,我可以加载它,但angular ui router没有将它路由到正确的templateURl(app.html与index.html位于同一个Derectoy中)。我已经添加了所有必需的脚本,但它不工作

<!DOCTYPE html>
<html ng-app ="mustReadAlgo">
    <head>
        <title>AngularJS Basic Example</title>
        <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
        <link rel="stylesheet" href="lib/css/bootstrap.min.css" />
        <link rel="stylesheet" href="lib/css/animate.min.css" />
        <script type='text/javascript' src="public/lib/moment.min.js" charset="UTF-8"></script>
        <script type='text/javascript' src="../../public/lib/lodash.min.js" charset="UTF-8"></script>
        <script type='text/javascript' src="../../public/lib/angular/angular.min.js" charset="UTF-8"></script>


        <script type='text/javascript' src="../../public/lib/angular-sanitize/angular-sanitize.min.js" charset="UTF-8"></script>
        <script type='text/javascript' src="../../public/lib/angular-ui-router/release/angular-ui-router.min.js" charset="UTF-8"></script>
        <script type='text/javascript' src="../../app.js" charset="UTF-8"></script>
        <script type='text/javascript' src="../../app/controllers/app.controller.js" charset="UTF-8"></script>





    </head>
    <body>

        <div class="container" ui-view="" ></div>


    </body>
</html> 
控制器代码在app.controller.js中

angular.module('mustReadAlgo').controller('mustReadAlgoCntrller',function($scope)
{
    $scope.message='Hello World';
    console.log('inside controller');
});
app.html的内容

<div class="row">
  <div class="col-xs-2">
    <button class="form-control btn btn-default"><span class="glyphicon glyphicon-thumbs-up"></span>Hello World</button>
  </div>
    <p>Hello</p>
</div>

你好,世界
你好

但是ui路由无法正常工作以加载templateUrl?
谁能帮我一个忙吗?我是angular js的新手。

如果你要直接传递HTML作为模板,你需要使用
模板:
,而不是
模板URL:

您需要在状态配置中为Others定义状态,并在$urlRouterProvider.Others函数中使用statename

$stateProvider
    .state("otherwise", { url : '/'})

 $urlRouterProvider.otherwise('/otherwise');

在控制器中注入$state,这将解决问题。 更清楚地说-

    angular.module('mustReadAlgo', ['ui.router']).controller('mustReadAlgoCntrller',['$scope', '$state', function($scope, $state)
{
    $scope.message='Hello World';
    console.log('inside controller');
}]);
尝试使用:

<div class="container">
   <ui-view></ui-view>
</div>

//而不是:

<div class="container" ui-view="" ></div>


这看起来不像URL。是的,但它应该可以工作。这是一个html代码,所以它应该显示出来。即使我在那里使用任何URL,它也不工作。比如说,如果我将模板URL添加为'app.html',它与index.html位于同一位置。你有任何错误吗?“mustReadAlgoCntrller”中可能有输入错误?谢谢你的帮助。我没有发现任何错误。我检查过没有输入错误。在编辑中也添加了控制器代码。为什么要同时包括
angular.ui.router.js的常规版本和最小化版本?另外,可能会显示
app.html
的内容。谢谢,我会尝试。很抱歉,我将问题编辑为使用templateUrl。我尝试使用template to,但效果不好。这将如何帮助解决问题?OP未在
mustReadAlgoCntrller
控制器内使用
$state
。在源代码中的view指令定义处,您可以阅读restrict:“ECA”。在文档中是使用抽象视图时的参考。
<div class="container" ui-view="" ></div>