requirejs打包后的疑问


我先贴代码。
login.js


 define(['jquery', 'ko', 'ajax', 'cookie'], function ($, ko, ajax) {
    //to do
    ajax.post({
        //to do something
    });
});

ko.js


 define(['jquery', 'knockout', 'ajax', 'cookie'], function ($, knockout, ajax) {
    //to do
});

ajax.js


 define(['jquery'], function ($) {
    //to do
});

打包的时候,我把 knockout ajax cookie 合并到 ko.js 去( jquery 一般我都合并到 require.js 去)。
那这时候,登陆页面加载 login.js ,就会加载它的依赖 ko ajax cookie ,可是 ko 已经包含有 ajax 了, login.js 的依赖是可以不写 cookie ,但是 ajax 是要写的,因为有用到 ajax 函数里面的方法。

解决方法除了在 login.js 模块里面写 var ajax = require('ajax'); 代替依赖之外,有其他更好的方法吗?

顺便问下,我写 var ajax = require('ajax'); 是否要加上 require 的依赖?

web前端开发 requirejs 前端优化

吉姆·雷诺 9 years, 11 months ago

这个问题可以查看此处: http://segmentfault.com/q/1010000000460671

补充:楼主的思路已经偏离了模块化,又一次走上了老路子。我不说啥了。

t.akiha answered 9 years, 11 months ago

Your Answer