gpt4 book ai didi

javascript - Angular JS 路由造成无限循环

转载 作者:行者123 更新时间:2023-12-03 06:39:16 26 4
gpt4 key购买 nike

我有 Django 服务器

url.py

urlpatterns = [
url('^', IndexView.as_view(), name='index')
]

登陆/urls.py

urlpatterns = [
url(r'^admin/', admin.site.urls),
url('^.*', include("landing.urls"))
]

View .py

class IndexView(TemplateView):
template_name = 'landing/header.html'

def get_context_data(self, **kwargs):
context = super(IndexView, self).get_context_data(**kwargs)
context['meals'] = get_data()

return context

标题.html

<html lang="en" ng-app="KolyadaApp">

<div ng-view></div>
<a class="navbar-brand" ng-href="/landing">landing</a>
<a ng-href="#/menu">menu</a>
<a ng-href="#/week">week</a>

app.js

'use strict';

/* Controllers */
var KolyadaApp = angular.module('KolyadaApp', ['ngRoute', 'ngResource']);

angular.
module('KolyadaApp').
config(['$locationProvider', '$routeProvider', '$interpolateProvider',
function config($locationProvider, $routeProvider, $interpolateProvider) {
$interpolateProvider.startSymbol('{$');
$interpolateProvider.endSymbol('$}');

$routeProvider.
when('/', {
templateUrl: function(route) {

console.log(route);

return '/';
}
}).
when('/menu', {
templateUrl: '/menu.html'
}).
when('/week', {
templateUrl: '/week.html'
}).
otherwise('/', {
redirectTo:'/'
});
}
]);

我得到的结果:加载页面后,我无法对链接执行任何操作,控制台日志定期告诉我有关调用堆栈溢出的信息。而且很难关闭选项卡。

好吧,经过一段时间的搜索答案,并在尽可能多的地方放置“/”,我决定问你。请告诉我哪里错了。

谢谢。

最佳答案

我相信这是你的问题:

urls.py

urlpatterns = [
url('^', IndexView.as_view(), name='index')
]

登陆/urls.py

urlpatterns = [
url(r'^admin/', admin.site.urls),
url('^.*', include("landing.urls")) # Circular reference
]

每次加载 landing/urls.py 时,您都会在 include 标记内重新加载 landing.urls

您的意思是该行位于 urls.py 中吗?如果是这样,您需要更改其中一个或两个,以免它们发生冲突(即 ^^.* 都匹配空字符串)。

关于javascript - Angular JS 路由造成无限循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38042135/

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