【发布时间】:2014-03-25 07:57:01
【问题描述】:
我正在使用 AngularJs 在 ASP MVC 框架之上创建一个 SPA。在启用 HTML5 模式以生成更好的 URL 之前,我的一切工作都很好。现在没有加载图像。
似乎对我的 /Images 文件夹的任何请求都没有发送到服务器。我使用 Fidler 检查流量,可以看到所有对部分的请求,但看不到图像。
这是我的 AngularJs 路线
$stateProvider.
state({
name: 'home',
url: '/',
templateUrl: '/app/public/partials/index.html'
}).
state({
name: 'infoprivacy',
url: '/info/privacy',
templateUrl: '/app/public/partials/info/privacy.html'
}).
state({
name: 'infocookie',
url: '/info/cookie',
templateUrl: '/app/public/partials/info/cookie.html'
}).
state({
name: 'infoterms',
url: '/info/terms',
templateUrl: '/app/public/partials/info/terms.html'
}).
state({
name: 'groups',
url: '/groups',
templateUrl: '/app/public/partials/groups/index.html'
}).
state({
name: 'groupsview',
url: '/groups/view/:id',
templateUrl: '/app/public/partials/groups/view.html'
}).
state({
name: 'jobs',
url: '/jobs',
templateUrl: '/app/public/partials/jobs/index.html',
controllr: 'JobsCtrl'
}).
state({
name: 'jobsview',
url: '/jobs/view/:id',
templateUrl: '/app/public/partials/jobs/view.html'
}).
state({
name: 'jobsnotfound',
url: '/jobs/notfound',
templateUrl: '/app/public/partials/jobs/notfound.html'
}).
state({
name: 'login',
url: '/login',
templateUrl: '/app/public/partials/login.html'
}).
state({
name: 'error',
url: '/error/:errorRef',
templateUrl: '/app/public/partials/error.html'
}).
state({
name: 'cvs',
url: '/cvs',
templateUrl: '/app/public/partials/cvs/index.html'
}).
state({
name: 'cvsedit',
url: '/cvs/edit/:id',
templateUrl: '/app/public/partials/cvs/edit.html'
}).
state({
name: 'cvsedit.withdlg',
url: '/:dlg',
templateUrl: '/app/public/partials/cvs/edit.html'
}).
state({
name: 'profile',
url: '/profile',
templateUrl: '/app/public/partials/profile/index.html'
});
$urlRouterProvider.when('', '/');
$locationProvider.html5Mode(true).hashPrefix('!');
这是未加载的背景图片的 CSS
#menu .item.navProfile {
background: url(/Images/icon-nav-profile.png) right 20px no-repeat;
}
包含菜单的 HTML 是使用 ng-include 加载的
【问题讨论】:
-
也许这个答案有帮助 - stackoverflow.com/a/6161057/2104976
-
问题是图像请求似乎没有发送到服务器。我猜 AngularJs 正在尝试路由它?
-
没办法。在 Chrome 上打开浏览器控制台,看看它是否能够在网络选项卡中选择路由。或者看看控制台是否有任何错误(可能是 404)?
-
在 chrome 中查看网络选项卡中的请求,它只是说它正在等待并永远保持等待状态
-
你的服务器端代码丢失了,bug应该在这里(url重写)
标签: javascript asp.net-mvc angularjs