当我尝试从模板文件夹中加载注入的页面时,我发现页面未找到错误。 index.html页面是我启动服务器时默认启动的页面,它还包含ng-view,所以我可以注入angular config中指定的页面。
这是我的项目结构:
angular_routing/
flask_service.py
static/
script.js
templates/
index.html
home.html
....
这是我的角度路由:
// configure our routes
scotchApp.config(function($routeProvider) {
$routeProvider
// route for the home page
.when('/', {
templateUrl : 'templates/home.html',
controller : 'mainController'
})
// route for the about page
.when('/about', {
templateUrl : 'templates/about.html',
controller : 'aboutController'
})
// route for the contact page
.when('/contact', {
templateUrl : 'templates/contact.html',
controller : 'contactController'
})
.otherwise({
templateUrl: '/',
controller: 'mainController'
});
// $locationProvider.html5Mode(true);
});
顺便说一句,我尝试在templateUrl前加上' /'但它也没有用。
答案 0 :(得分:1)
模板文件夹用于模板文件,将由Jinja从Flask呈现。它们不能作为Angular可访问的普通静态html文件。将Angular模板移动到静态文件夹并从那里访问它们。如果您在Jinja模板中呈现Angular路由代码,则可以使用url_for
生成网址。
templateUrl: '{{ url_for('static', filename='angular_templates/home.html') }}'
// or if the Angular is complete separate from Flask/Jinja,
// you'll have to just write out the path
templateUrl: 'static/angular_templates/home.html',
答案 1 :(得分:-1)
检查路由器是否正在访问正确的页面。您可以通过开发者控制台在Chrome中执行此操作,然后使用“网络”标签。