Javascript 角度+;Laravel:通过ngRoute加载视图
在结合Laravel和Angular时,我面临这个问题: 根据我在网上找到的一个非常简单的方法,我尝试使用Javascript 角度+;Laravel:通过ngRoute加载视图,javascript,php,angularjs,laravel,ng-view,Javascript,Php,Angularjs,Laravel,Ng View,在结合Laravel和Angular时,我面临这个问题: 根据我在网上找到的一个非常简单的方法,我尝试使用ng view指令加载一个视图。但是,我无法实际加载模板。这是我的app.js代码: (function() { var app = angular.module('profuApp', ['ngRoute']); app.config(['$routeProvider', '$locationProvider', function($routeProvider, $lo
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
. . .
站点正常加载,但当我查看源代码时,而不是查看ini.html
中的模板时,会发生这种情况
在我的index.blade.php文件中使用
<div ng-view></div>
<!-- ng-view: -->
我在浏览器源代码中看到的代码
<div ng-view></div>
<!-- ng-view: -->
Chrome上的网络
选项卡在尝试加载视图时没有显示404错误
到目前为止,我所尝试的:
js
文件夹中(templateUrl:'templates/inicio.html')public
文件夹中(templateUrl:“../templates/inicio.html”)
- 另外,
templateUrl:'/public/templates/inicio.html'
js
文件夹中:(templateUrl:'inicio.html')EDIT我在url中也看到了这种情况:它不像
myapp/public/inicio
那样加载myapp/public/inicio
你的index.blade.php在哪里templateUrl
应该是从加载app.js代码的任何文件(我假设是index.blade.php)到模板的路径。因此,如果它在根目录中,templateUrl:'/public/templates/inicio.html'
至于
#
的问题,请再次阅读,这完全是人为的错误。对于那些花时间试图回答和理解我的问题的人,我感到抱歉和感激。这就是解决方案:
我使用的是直接来自CDN的最新稳定版本,版本1.3.5;然而,为了看看会发生什么,我改为版本1.2.28。有什么区别?一点语法
而不是我上面所做的
app.controller('homeCtrl', ['$scope', '$http', function($scope, $http) {
. . .
我这样做:
app.controller('homeCtrl', function($scope, $http) {
. . .
答案是从一个版本改成另一个版本,并稍微修改一下语法
我希望这能帮助像我一样心烦意乱的人。我相信这是因为你的基地href关闭了。转到“网络”选项卡,它试图包含的路径是什么?这就是问题所在,它甚至没有调用它。没有404错误,因为没有调用它。我编辑了这个问题以报告另一个未知行为。我的index.blade.php位于文件夹
app/views/
中。我尝试了与你提供的路线完全相同的路线,但问题仍然存在。你在哪个URL上测试这个?localhost/8888/inicio或localhost/8888/#/inicio?这个应用程序中有多个角度模块吗?我对myapp/public/inicio
vsmyapp/public/inicio\#/
的差异有点困惑,url到底从哪里来/位于哪里?我正在本地主机上测试:8888/myapp/public/inicio。只有一个模块,app.jsHm上的模块,可能是服务器上的某个地方提供了不正确的文件。我不知道您是如何设置的,但是您是否总是指向index.blade.php文件,而不管路径如何?当您尝试localhost:8888/#/myapp/public/inicio时会发生什么情况?有关更多详细信息,请参阅。