0
我知道這是一個非常基本的問題,但似乎無法讓所有的東西都變得合適 - 我試圖使用Angular/Sinatra應用程序來處理前端路由。我的應用程序沒有打到正確的頁面,並且我爲什麼會感到不知所措,因爲如果您不使用數據庫,在繞過路線工作的路上遇到一些麻煩。前端應用程序的角度路由
在我的主頁,「display.html」,我有一些文字,然後用HREF中一組D3圖表:
<a href="/app/{{appname}}">
<div ng-cloak class="nvd3-bullet-chart2" id="chart" data="subsetVals" showXAxis="true" showYAxis="true">
</div>
</a>
的圖表是通過一個NVD3功能爲每個循環,而填充比使用ng-repeat(不知道如何處理與異步性有關的問題)。
在我displayCtrl,我定義$ scope.appname這樣的:
$scope.appname = ''
var getGraphs = function(dataset){
var stats = {
app: dataset[0].App
}
$scope.appname = stats.app;
$scope.appname = $routeParams.appname;
}
我有我的設置是這樣的角度路線:
app.config(function($routeProvider) {
$routeProvider
// route for the display page
.when('/', {
templateUrl: '/views/display.html',
})
.when('/app/:appname', {
templateUrl: 'views/details.html',
});
});
當我點擊的href的圖表,我收到一個錯誤消息,表示在'/ app /'找不到該頁面,這對我來說表明:appname永遠不會被拾取。那麼應該在哪裏定義?
如果需要,我很高興添加更多的細節和代碼。謝謝!
這讓我有一部分的方式 - 但我仍然沒有得到/ app /後的任何應用程序名稱。你知道這是爲什麼嗎? – Car 2014-10-08 17:53:30
不確定..可以嘗試的情侶東西。在行的正上方添加 {{appname}}並查看它是否顯示正確的值。我有一種感覺,你的範圍沒有正確的appname值。如果您在那裏沒有找到正確的值,那麼在您設置該值的控制器邏輯中可能會遇到問題。讓我知道這是否有幫助。 – 2014-10-08 18:08:41
另外,你爲什麼要試圖訪問您的displayCtrl中的$ routeParams.appname,您將該參數發送到您的詳細信息頁面? – 2014-10-08 18:16:46