javascript - CodeIgniter Angular 文件夹动态 URL 路由

标签 javascript php angularjs codeigniter

我有一个应用程序,其中的 View 位于 CI 文件夹中。

domain.com/apps/view/user/xxx.php

我启用了 Angular

domain.com/apps/assets/js/app.js

domain.com/apps/assets/js/controllers.js

目前我正在使用静态 URL 在此应用程序中加载我的 View 。 我使用 CI Controller 进行数据库处理,使用 Angular Controller 和路由在界面中显示和处理信息。

添加备份域时我遇到问题。

app.js

 angular.module('starter', ['ionic', 'starter.controllers'])

 .run(function($ionicPlatform) {
  $ionicPlatform.ready(function() {         
if (window.cordova && window.cordova.plugins.Keyboard) {
  cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
}
if (window.StatusBar) {
  StatusBar.styleDefault();
}
  });
})

  .config(function($stateProvider, $urlRouterProvider,$location) {
  $stateProvider

  .state('app', {
url: "/app",
abstract: true,
templateUrl: "http://m.domain.com/_aps4497/views/user/menu.php",
controller: 'AppCtrl'
 })

   .state('app.main', {
url: "/main",
views: {
  'menuContent': {
    templateUrl:  "http://m.domain.com/_aps4497/views/user/main.php"
  }
}
 })

  .state('app.message', {
url: "/message",
views: {
  'menuContent': {
       templateUrl: "http://m.domain.com/_aps4497/views/user/message.php"
  }
}
 })



  $urlRouterProvider.otherwise('/app/main');
});

我尝试过:

  .state('app.message', {
url: "/message",
views: {
  'menuContent': {
       templateUrl: "http://"+$location.host()+"/_aps4497/views/user/message.php"
  }
}
 })

错误:检索到的内容相同。

.config(function($stateProvider, $urlRouterProvider,$location) {
     $stateProvider

   .state('app', {
url: "/app",
abstract: true,
templateUrl: "http://"+$location.host()+"/_aps4497/views/user/menu.php",
controller: 'AppCtrl'
   })

https://docs.angularjs.org/error/$injector/modulerr?p0=starter&p1=$location%20is%20not%20defined <br>

Controller .js

 angular.module('starter.controllers', ['pascalprecht.translate'])

.factory('UserService', function($http) {
var data;   
      return{
          getData: function($http) {
                    return $http.get("http://m.domain.com/user/getUserInfo").
                    success(function(response) {
                     /// console.log(JSON.stringify(response));
                      userData=response.data;
                            return userData;

                   }).error(function(data, status, headers, config) {
                     // log error
                    });
          }
    }
})
  1. 我们如何将路线和位置设置为动态(多域)?

  2. Angular + CI 上文件夹系统的最佳实践是什么? 如果我想将所有 View 放在部分文件夹中,我应该将部分文件夹放在哪里才能被 Angular Controller 和 app.s 访问?

请帮忙! 谢谢。

最佳答案

您在使用之前似乎没有注入(inject)$location..

.config(function($stateProvider, $urlRouterProvider,$location)

以及使用它:

templateUrl: "http://"+$location.host()+"/_aps4497/views/user/message.php"

关于javascript - CodeIgniter Angular 文件夹动态 URL 路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30565433/

相关文章:

java - 在 Android 中执行数学方程式

php - 允许表中重复

javascript - 错误: $injector:modulerr Module Error/Angular service

angularjs - 以 "Angular"方式为现有 javascript 对象编写指令

javascript - react js eventListeners 没有按预期删除

javascript - 使用纯 JavaScript 从文本文件中读取数据

javascript - 如何检查我是否在浏览器中运行 JavaScript 代码?

Php通过html表单选择行,并写入txt文件

php - 本地化 html 文档(事后)

javascript - AngularJS 单元测试 : Injected Services undefined