Javascript angularjs remove index.html
更新 AngularJS现在工作。切换到WebStorm IDE,但在设置上也有问题,这帮助了我:Bower“Git不在路径中”错误 很快我将再次尝试在WebStorm下进行路由 如何从本地主机URL中删除index.html?也有类似的问题,但他们帮不了我 以下是我迄今为止所做的: index.html: config.js:Javascript angularjs remove index.html,javascript,html,angularjs,iis,iis-express,Javascript,Html,Angularjs,Iis,Iis Express,更新 AngularJS现在工作。切换到WebStorm IDE,但在设置上也有问题,这帮助了我:Bower“Git不在路径中”错误 很快我将再次尝试在WebStorm下进行路由 如何从本地主机URL中删除index.html?也有类似的问题,但他们帮不了我 以下是我迄今为止所做的: index.html: config.js: 是否尝试从应用程序url中删除index.html app.config(['$routeProvider', '$locationProvider', functio
是否尝试从应用程序url中删除index.html
app.config(['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
$route.html5Mode(true);
$routeProvider.
when('/', {
templateUrl: 'index.html',
controller: 'HomeCtrl'
}).
when('/menu', {
templateUrl: 'Modules/Menu/view.html',
controller: 'Modules/Menu/controller'
}).
when('/main', {
templateUrl: 'Modules/Main/view.html',
controller: 'Modules/Main/controller'
}).
otherwise({
redirectTo: '/menu'
});
}
]);
我想设置路由“/”应该可以完成这项工作。无论如何,我都是这样做的。您正在使用IIS Express托管AngularJS应用程序文件,所以我认为这就是您所寻找的。Yagiz Ozturk解决方案建议您以这种方式配置IIS服务器以重写URL,这样您就可以跳过index.html部分:
这是只能在服务器端完成的,您使用的是哪种服务器?Apache/node.js…我正在使用IIS Express。请将其放入我的web配置中。仍然得到,作为url的。我还在服务器上安装了iis的url重写器,并在index.html中添加了一个基本href。从href中删除,但安装了Microsoft.Web.Infrastructure并进行了引用时,出现“Owin”错误。找不到application servererror、Owin、Version=1.0.0.0、Culture=neutral、PublicKeyToken=f0ebd12fd5e55cc5。系统找不到文件错误。以防万一:您在文档中为HTML5模式设置了吗?我设置了。Visual Studio似乎没有检测到AngularJS。请参阅我的最新问题。当然,我在'htm'标记中有ng app=myApp。
var app = angular.module('myApp', [
'ngRoute',
'ngResource',
'HTML5ModeURLs'
});
app.config(['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
$route.html5Mode(true);
$routeProvider.
when('/menu', {
templateUrl: 'Modules/Menu/view.html',
controller: 'Modules/Menu/controller'
}).
when('/main', {
templateUrl: 'Modules/Main/view.html',
controller: 'Modules/Main/controller'
}).
otherwise({
redirectTo: '/menu'
});
}
]);
app.config(['$routeProvider', '$locationProvider',
function ($routeProvider, $locationProvider) {
$route.html5Mode(true);
$routeProvider.
when('/', {
templateUrl: 'index.html',
controller: 'HomeCtrl'
}).
when('/menu', {
templateUrl: 'Modules/Menu/view.html',
controller: 'Modules/Menu/controller'
}).
when('/main', {
templateUrl: 'Modules/Main/view.html',
controller: 'Modules/Main/controller'
}).
otherwise({
redirectTo: '/menu'
});
}
]);
<system.webServer>
<rewrite>
<rules>
<rule name="AngularJS" stopProcessing="true">
<match url=".*" />
<conditions logicalGrouping="MatchAll">
<add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
<add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
<add input="{REQUEST_URI}" pattern="^/(api)" negate="true" />
</conditions>
<action type="Rewrite" url="/" />
</rule>
</rules>
</rewrite>