2017-02-27 28 views

回答

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 {} 

這是準系統的解釋,希望您可以從中看到如何拼湊在一起構建一個應用程序。

+0

謝謝邁克爾,我會建立你所說的,如果它能起作用,我會回到你身邊,再次感謝你:) –

相關問題