ionic入门教程第三课-在项目中使用requirejs分离controller文件和server文件

继上篇教程中提到的,我们新建一个简单的tabs类型的Ionic项目。

根据目录文件我们知道,系统自动创建了一个controller文件和server文件,并且把所有的控制器和服务都写到这两个文件里面。


这是一个简单的项目,业务逻辑代码也很少,这样子实现并没有什么问题,但是当我们的项目越写越多,业务逻辑越来越复杂。如果我们还是把所有的控制器写到同一个文件里面,那可能我们将要面对的就是一个有着上万行代码的文件。每次编辑只能通过搜索关键字来定位了。

所以真正编辑项目的时候我们应该都是把单独的controller分离出来的,本次教程中使用的是requirejs。

首先我们应该先把单独的controller提取出来,保存到单独的文件中,第一步我们先把代码拷贝出来,并不做修改。

先不管报错,我们只是先理解一下,文件分离的内容。

新建两个文件夹用于存放controller和server文件,便于管理。

然后我们要做的就是将单独的controller文件和controllers文件关联起来。

首先我们先引用requirejs文件,下载requirejs文件放到项目文件夹中并在index.html中引用。

然后我们修改controllers/controllers.js文件,使他符合requireJs要求的规范。


然后分别修改单独的controller文件,让他们也符合规范。


通过上面的修改,应该不难发现,要把现有的项目完成文件分离只需要复制代码就可以了,并不需要修改业务逻辑。

接下来我们要做的就是把这些文件关联起来。

修改controllers文件:


这样子我们就完成了controller文件的分离和关联,但是有些controller文件有用到服务,所以我们也要在controllers文件中关联服务文件。

在controllers文件中加入var services= require('services/services');

同样的做法,修改servers文件,将里面的服务独立出来。修改后的文件目录和services文件如下。



这样子我们就实现了controller和server文件的分离,现在我们将项目中的其他文件也修改成requireJs的规范,并使用requireJs的方式来启动项目

修改app.js:(只是多了一层封装返回app对象,里面的业务不做修改)


修改的地方都差不多了,接下来跟着我看一下如何使用require的方法启动Ionic项目。

首先在index文件中引用requireJs的script标签中加入 data-main="js/main.js"属性,表示启动入口的文件地址。

<script data-main="js/main.js" src="js/require.js"> </script>
新建main.js,这里不做详细的配置,只是定义了一个简单的程序入口
说明程序是从bootstrap文件启动的
新建bootstrap.js这里做了一些简单的判断,如果觉得不好理解的话,可以直接启动项目
angular.bootstrap(document, [app.name]);
修改index.html去除ng-app="starter"把<body ng-app="starter">修改成<body>
注意因为js文件是通过requestjs加载的,所以要把index中对js的引用去掉
<!-- your app's js --> <!--<script src="js/app.js"></script>--> <!--<script src="js/controllers/controllers.js"></script>--> <!--<script src="js/services.js"></script>-->
运行项目,正常启动项目,从界面上看不出与新建项目的区别。
到此本次教程的内容就全部完成了。
项目Demo地址:http://pan.baidu.com/s/1eSi7huE
如果你还有什么其他的问题,可以通过以下方式找到我
新浪微博:小虎Oni
微信公众号:ionic__

有其他问题的可以关注一下公众号提问(右侧双下划线):ionic__

转载于:https://my.oschina.net/xiaohuoni/blog/1547955

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值