-3

任何人都可以告诉我我在这里做错了什么:

我只是更新了库,似乎代码由于某种原因而中断,它什么也没做。

角度库

html5代码

<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.0.5/angular.min.js"></script>
<header id="header">
    <h1 id="logo"><a href="#/home"></a></h1>

    <div id="menu">
        <a ng-click="setRoute('home')" class="btn">Home</a>
        <a ng-click="setRoute('about')" class="btn">about</a>
    <a ng-click="setRoute('experiments')" class="btn">Experiments</a>
    </div>
    <div class="color"></div>
    <div class="clear"></div>
</header>
<!-- //top -->
<div class="shadow"></div>

<div id="container">
    <div ng-view></div>
</div>

角.js

 angular.module('WebSite', []).
    config(function($routeProvider) {
        $routeProvider.
            when('/about', {templateUrl:'folder/test.html', controller:AboutCtrl}).
            when('/experiments', {templateUrl:'folder/test.html', controller:ExperimentsCtrl   }).
            when('/home', {templateUrl:'folder/test.html', controller:HomeCtrl   }).
            otherwise({redirectTo:'/home'});
    });

function AboutCtrl($scope) {
    $scope.title = 'About Page';
    $scope.body = 'This is the about page body';
}

function ExperimentsCtrl($scope) {
    $scope.title = 'Experiments Page';
    $scope.body = 'This is the about experiments body';
}

function HomeCtrl($scope) {
    $scope.title = 'Home Page';
    $scope.body = 'This is the about home body';
}
4

2 回答 2

0

您需要在https://github.com/simpulton/angular-website-routes查看来自 github 的源代码

没有 changeRoute 方法。经过一番对话,我意识到最好尽可能自然地处理锚标签。

您的菜单元素应如下所示

<div id="menu">
    <a href="#/home" class="btn">Home</a>
    <a href="#/about" class="btn">About</a>
    <a href="#/experiments" class="btn">Experiments</a>
</div>

希望这可以帮助!

于 2013-03-16T03:06:13.987 回答
0

首先,您需要使用 ng-app 为您的模块设置 Angular 应用程序。也许您已经这样做了,但这不是您发布的片段的一部分:

<html ng-app="WebSite">

另外,关于 setRoute(),我不知道你从哪里复制它,但你不需要它。只需将 href 与哈希一起使用,例如:

<a href="#/about" class="btn">about</a>
于 2013-03-16T03:14:08.240 回答