我有一个使用 Codeigniter 构建的应用程序,我想使用 BackboneJS 作为我的前端。我已经构建了一个 API,以便可以使用从数据库返回的 JSON,因此我唯一需要的就是将 Backbone 集成到我的 Codeigniter 设置中。我也已经有了一个 Backbone 应用程序,我在其中创建了大部分我需要的 View 。所以,在我的 Backbone 的 index.php 中,我有:
<script data-main="js/config" src="js/lib/requirejs/require.js"></script>
<script>
require(['config'], function(config) {
require(['app/mainpage']);
});
</script>
还在我的index.php中,我有所有div
是渲染我的主干 View 的地方。
我想知道如何将其集成到 Codeigniter 中。我在 Codeigniter 中的文件/文件夹结构是典型的 CI 设置:
- application
- config
- controllers
- models
- views
- assets
- css
- img
- system
index.php
.htaccess
那么最好的方法是什么?我应该创建一个额外的 js
-文件夹,然后将我的主干设置放在该文件夹中?如果是这样,那么 <script>
怎么样? -上面显示的代码?放在哪里?
提前致谢
最佳答案
您不久前问过这个问题,所以我不知道您是否仍在寻找答案,但由于我偶尔在 AngularJS 中使用类似的设置,因此我建议:
- 加载包含所有标题内容的 View 作为布局。我用this layout
- 将前端客户端 JS 加载到/application/views/site/header.php 的 include 内,请参阅 this repo for example
一旦加载了所有库,您就可以加载每个单独的 JS 应用程序(Angular 使用模块)或使用加载部分的单个应用程序(我假设主干具有此功能,Angular 也是如此)。
哦,还有一个陷阱:Codeigniter 不能很好地支持 JSON 帖子,因此 RESTful API 开箱即用并不容易。如果您需要接收 JSON post 数据,到目前为止我发现的最好的方法是完全迟钝的:
$phpArray = json_decode(file_get_contents('php://input'));
关于javascript - BackboneJS 与 Codeigniter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21157797/