我试图在Express Express旁边使用AngularJS ngRoute
,但我一直收到以下错误:
无法获取/个人资料
这是我的代码:
.config(['$locationProvider', '$routeProvider', function ($locationProvider, $routeProvider) {
$routeProvider.when('/profile', {
templateUrl: 'views/partials/profile.html',
controller: 'kontrola'
})
$locationProvider.html5Mode('true')
$locationProvider.hashPrefix('!')
app.get('/', routes.index)
app.get('/login', routes.login)
app.get('/signup', routes.signup)
我该如何解决?
答案 0 :(得分:0)
Angular的ngRoute
用于客户端路由,而express用于服务器端路由。
您需要在服务器中设置一个处理程序来提供静态文件,如下所示(假设您的views
文件夹位于static
文件夹中:
app.set('views', path.join(__dirname, 'static'));
然后,当您转到http://yourservername/#/profile
时,您将获得个人资料视图。
如果你想使用html5mode
,你需要有这样的标签:
<head>
.....
<base href="/">
</head>
答案 1 :(得分:0)
.config([&#39; $ locationProvider&#39;,&#39; $ routeProvider&#39;,&#39; $ provide&#39;,function($ locationProvider,$ routeProvider){
x = tf.placeholder(tf.float32, [None, 1024])
y = keras.layers.Dense(512, activation='relu')(x)
$ locationProvider.html5Mode(真) $ locationProvider.hashPrefix(&#39;!&#39)
$routeProvider.when('/profile', {
templateUrl: 'partials/pro.html',
controller: 'kontrola'
})
而不是:
.config([&#39; $ locationProvider&#39;,&#39; $ routeProvider&#39;,&#39; $ provide&#39;,function($ locationProvider,$ routeProvider){
$ locationProvider.html5Mode(真) $ locationProvider.hashPrefix(&#39;!&#39)
}])