如何在金字塔Web视图中创建/设置角度2应用程序

时间:2017-02-27 16:57:15

标签: angular configuration pyramid

我正在尝试使用我的金字塔网页视图创建一个有角度的2应用程序,我在线查看,没有找到任何明确的教程。

我的金字塔网页框架全部设置,我一直在使用angularjs来创建我的网页,我现在想要使用角度2。

我会感激任何指导:)

1 个答案:

答案 0 :(得分:4)

简短回答:只为你关心的网址提供一些HTML,并将你的角度应用程序放在静态文件夹中。金字塔不会假装控制你的静态资产(例如javascript / angular / etc),这取决于你。

答案很长:让我们说你有以下结构,其中" 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 {}

这是准系统的解释,希望你可以看到它们如何结合在一起构建应用程序。