【发布时间】:2015-02-23 08:05:09
【问题描述】:
我在结合 Laravel 和 Angular 时遇到了这个问题:
按照我在网上找到的一个非常简单的tutorial,我尝试使用ng-view 指令加载视图。但是,我无法真正加载模板。这是我的app.js 代码:
(function() {
var app = angular.module('profuApp', ['ngRoute']);
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when('/inicio', {
templateUrl: '../templates/inicio.html',
controller: 'homeCtrl'
})
.otherwise({ redirectTo: '/' });
}]);
app.controller('homeCtrl', ['$scope', '$http', function($scope, $http) {
$http.get('http://localhost:8888/profucom/public/getData').success(function(data) {
$scope.datos = data;
});
}])
})();
我的文件树:
app/
bootsrap/
public/
js/
angular.min.js
angular-route.min.js
app.js
templates/
inicio.html
. . .
网站加载正常,但是当我查看源代码时,而不是查看inicio.html 中的模板,就会发生这种情况...
在我的 index.blade.php 文件中的代码
<div ng-view></div>
我在浏览器源代码中看到的代码
<!-- ng-view: -->
Chrome 上的 network 标签在尝试加载视图时未显示 404 错误。
到目前为止我已经尝试过:
- 将模板放在
js文件夹中(templateUrl:'templates/inicio.html') - 将模板放在
public文件夹中(templateUrl:'../templates/inicio.html')- 还有,
templateUrl: '/public/templates/inicio.html'
- 还有,
- 将模板放在根文件夹中(templateUrl:'/templates/inicio.html')
- 仅将文件放在
js文件夹中:(templateUrl: 'inicio.html')
上述方法似乎都不起作用。请帮忙?
编辑我也在 url 中看到了这种情况:而不是 myapp/public/inicio 它加载像 myapp/public/inicio#/
【问题讨论】:
-
我相信这是因为您的基本 href 已关闭。转到您的网络选项卡,它试图包含的路径是什么?
-
就是这样,它甚至没有调用它。没有 404 错误,因为没有调用它。我编辑了他的问题以报告另一个未知行为。
标签: javascript php angularjs laravel ng-view