【问题标题】:Angular.js with PHP MVC (Codeigniter) confusionsAngular.js 与 PHP MVC (Codeigniter) 混淆
【发布时间】:2015-11-05 08:30:19
【问题描述】:

我想用 Angular.js 构建 SPA web 应用程序,但是它将在服务器端使用 Codeigniter MVC。

我很困惑,因为要遵循 Codeigniter MVC 规则,所有视图都应该在 application/views 文件夹下,并且应该可以通过调用将返回视图的控制器方法来访问。我阅读了有关 angular angular.js 结构的信息,我认为解决方案 described here 非常好。但是,遵循此结构,除索引之外的所有视图都应位于公共 html/app/module_name/ 文件夹中。

我想知道 html 视图应该去哪里?公开 HTML 或应用程序/视图文件夹,有什么区别,它如何影响我的进一步应用程序?

我希望我能很好地描述我的问题。

提前致谢。

【问题讨论】:

  • 您可能不需要 codeigniter 来提供视图 .. 与直接提供 html 文件相比,只是额外的开销。后端通常只用于 api。首先将 codeigniter 和 angular 视为 2 个独立的实体
  • 如果所有人即使没有登录也可以访问将存储在公共文件夹中的所有视图并且他们可以看到应用程序的更多结构,那么“安全性”有什么不同?
  • 如果您不希望任何人查看任何 html,您可以通过框架交付它们,但通常没什么大不了的,因为如果未登录则不会交付数据

标签: javascript php angularjs model-view-controller


【解决方案1】:

codeIgniter 多视图加载不适用于 SPA(单页应用程序), angularJS 用于 SPA,您需要做的是从 codeiginter 加载单个 PHP 页面并使用带有 ng-include 或指令的部分。

public function index()
{
    $this->load->view('main');
}

main.php:

<div ng-include="pathToHTMlView.html"></div>
<script src="angular.js"></script>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-26
    • 2017-04-09
    • 1970-01-01
    • 2017-10-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-06-21
    相关资源
    最近更新 更多