Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/22.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
相对于HTML页面具有ng视图的AngularJS路由_Angularjs_Url_Routing - Fatal编程技术网

相对于HTML页面具有ng视图的AngularJS路由

相对于HTML页面具有ng视图的AngularJS路由,angularjs,url,routing,Angularjs,Url,Routing,我对Angular很陌生,现在正试图用它做一个简单的布线。我有我的登录页,当前名为index2.html,其中包含一些.js和.css includes,还有一个div,其中包含我的内容应该进入的。 我的app.js如下所示: var module1 = angular.module('module1', ['ngRoute']); module1.config(function($routeProvider, $locationProvider){ $routeProvider.when

我对Angular很陌生,现在正试图用它做一个简单的布线。我有我的登录页,当前名为index2.html,其中包含一些.js和.css includes,还有一个div,其中包含我的内容应该进入的
。 我的app.js如下所示:

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

module1.config(function($routeProvider, $locationProvider){
  $routeProvider.when("/",
    {
      templateUrl: "page1.html",
      controller: "uiCtrl"
    }
    ).when("/:param",
    {
      templateUrl: "page1.html",
      controller: "uiCtrl"
    }
    ).when("/transactions",
    {
      templateUrl: "page2.html",
      controller: "uiCtrl"
    });
});
但实际上,这会让人很困惑。调用时,将page1.html的内容正确加载到ng视图中。到目前为止,还不错,但是调用index2.html/123会给我一个notfound,而不是将123解释为一个参数。我不知道为什么,但要使123成为参数,我必须调用index2.html#123,这是可行的,但随后会立即将url更新为index2.html#/123。 调用index2.html/transactions根本不起作用。如何调用我的/交易路线


编辑:如果这有用的话,我在这些页面中也使用了JQueryMobile。

通过HTML5模式的工作,我终于得到了我想要的,这让事情变得简单多了。 设置
$locationProvider.html5模式后(true)我必须重新配置我的Web服务器,直到找到这本漂亮的指南,我才能够管理它:


现在我可以使用斜杠以传统方式访问我的每条路线。参数可以像往常一样通过
&
传递,我不需要再纠结于混淆的hashtags和自动更改的url。

看起来应该是
index2.html#/123
,因为你没有使用HTML5路由模式。HTML5模式到底是什么?我如何才能调用index2.html/transaction(或类似的东西)在ng视图中查看我的事务页面?如果您使用HTML5模式,那么您需要配置Web服务器以对所有请求(当然,静态、图像、css等除外)响应
index2.html
。否则,您必须使用hashbang模式并使用
index2.html#/transaction
。是否可以从url中删除index2.html?通过将其设置为欢迎页面。然后您的url将很简单,您可以为index2.html键入myurl.com,为index2.html#/123键入myurl.com/123