我正在尝试使用我的金字塔网络视图创建一个angular 2应用程序,我在网上看过,没有找到任何清晰的教程。
我已经完成了金字塔网络框架的所有设置,我一直在使用angularjs创建我的网页,现在我想使用angular 2。
我将不胜感激任何指导:)
最佳答案
简短的答案:只需为您关心的网址提供一些html并将您的角度应用程序放在静态文件夹中。金字塔不假装控制您的静态资产(例如javascript / angular /等),这取决于您。
长答案:假设您具有以下结构,其中“ app.js”是已编译的(或无关紧要的)角度应用程序...假设还存在角度依赖关系,因此可以访问所有内容。您需要对此进行更新,但是您打算构建JavaScript等。
myapp/
- static/
- css/
- main.css
- js/
- app.js
- media/
- views/
- default.py
- templates/
- spa.jinja2
假设您的
app.js
然后有一些东西可以将您的应用程序引导到DOM。var appElement = document.getElementById('app')
// render angular app on appElement
然后,在
spa.jinja2
模板中获得了典型的单页应用html。注意,它是如何从静态文件夹中引用您的js / css的。<html>
<head>
<link type="stylesheet" src="{{ request.static_url('myapp:static/css/main.css') }}">
</head>
<body>
<div id="app"></div>
<script src="{{ request.static_url('myapp:static/js/app.js') }}"></script>
</body>
</html>
现在,您将添加一个仅提供html的路由/视图。
config.add_route('home', '/')
@view_config(route_name='home', renderer='spa.jinja2')
def home_view(request):
return {}
这是准系统的解释,希望您可以从中了解如何将各个部分组合在一起以构建应用程序。