我正在潛入角度,這是非常基本的。我無法使這個路由選擇工作。本質上,這是我無法獲得角路由工作
<!DOCTYPE html>
<html ng-app="panel">
<head>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular.min.js"></script>
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.1/angular-route.min.js"></script>
<script>
var panel = angular.module('panel', ['ngRoute']);
panel.config(function ($routeProvider) {
$routeProvider.
when(':route', {
controller: 'MainCtrl'
});
});
panel.controller('MainCtrl', function ($scope, $http, $routeParam) {
console.log($scope, $routeParam);
$http.get($routeParam.route).success(function (html) {
$scope.body = html;
});
});
</script>
</head>
<body ng-model="body"></body>
</html>
我試圖加載任何網頁是哈希動態的身體,但我所得到的,當我改變了哈希是我得到的東西像#!#test
如果我去#test
和我在控制檯中看不到任何東西。
有助於瞭解您在$ routeParam.route中獲得的值。但大多數情況下......我不確定通過ng-model將HTML頁面加載到body標籤是否可以解決這個問題。我明白你想要做什麼(曾幾何時,我有同樣的想法),但它不是很「有棱角」。通常,您希望使用ng-view,創建一個控制器/模板,當正確的路徑被觸發時,路由器將其加載到ng-view中,然後在該控制器內部使用指令來使用模板填充所需的HTML。至少,這將是完成工作的典型方式。 –
@TimConsolazio我看到了,但目前我有一個已經寫好的大型項目,我只是想將其轉換爲SPA,而我無法完成所有這些麻煩。我並不是真的希望去完成這項工作的「角度」方式。 –