gpt4 book ai didi

angularjs - Angular 路由在 Chrome 中不起作用

转载 作者:行者123 更新时间:2023-12-02 04:57:32 24 4
gpt4 key购买 nike

我正在试用 AngularJS 并一直在观看 Dan Wahlin 的 youtube 视频,但无法在 Chrome 或 IE 中使用路由。在 FireFox 中一切正常,仅此而已。它只是给出一个空白页。有人知道哪里出了问题吗?

代码如下:

索引.html

<!DOCTYPE html>
<html data-ng-app="demoApp">
<head>
<title></title>
<script src="angular.min.js"></script>
<script src="foo.js"></script>
</head>
<body>
<!-- Placeholder for views-->
<div data-ng-view=""></div>
</body>
</html>

foo.js

var demoApp = angular.module('demoApp',[]);

demoApp.config(function($routeProvider){
$routeProvider.when('/view1',{templateUrl: 'Partials/View1.html',controller: 'SimpleController'});
$routeProvider.when('/view2',{templateUrl: 'Partials/View2.html',controller: 'SimpleController'});
$routeProvider.otherwise({redirectTo: '/view1'});
});
var controllers = {};
controllers.SimpleController = function($scope){
$scope.customers = [
{name:'John Doe',city:'Phoenix'},
{name:'Jane Doe',city:'New York'},
{name:'Terrence Winter',city:'Los Angeles'},
{name:'Barack Obama',city:'Washington DC'}
];
$scope.addCustomer = function(){
$scope.customers.push(
{
name: $scope.newCustomer.name,
city: $scope.newCustomer.city
});
};
}
demoApp.controller(controllers);

View1.html

<div class="container">
<h3>View 1</h3>
Name:
<br>
<input type="text" data-ng-model="filter.name"/>
<br>
<ul>
<li data-ng-repeat="cust in customers | filter:filter.name | orderBy:'name'"> {{cust.name}} - {{cust.city}}</li>
</ul>
<br>
Customer Name: <br>
<input type="text" data-ng-model="newCustomer.name"/>
<br>
Customer City: <br>
<input type="text" data-ng-model="newCustomer.city"/>
<br>
<button data-ng-click="addCustomer()">Add Customer</button>
<br>
<a href="#/view2">View 2</a>
</div>

View2.html

<div class="container">
<h3>View 2</h3>
<input type="text" data-ng-model="city"/>
<br>
<ul>
<li data-ng-repeat="cust in customers | filter:city | orderBy:'city'"> {{cust.name}} - {{cust.city}}</li>
</ul>
</div>

最佳答案

Chrome 不允许这样做,因为模板是通过 AJAX 加载的。您可以通过使用 npm 设置一个简单的 http 服务器来解决此问题。

在 nodejs 命令提示符下转到您的项目文件夹。然后输入

npm install http-server -g

这将在您的机器上安装 http 服务器。

然后使用命令启动你的服务器

http 服务器

现在,使用您的服务器已启动的 ip 和端口运行您的文件,然后就可以了!路由也适用于 Chrome。

关于angularjs - Angular 路由在 Chrome 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17727111/

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