[英]MVC bundling with minification and require.js
我正在構建一個MVC應用程序,並在其中使用angular和require.js。
我已經如下定義了我的JS文件。
第一個JS文件:
define(function (require) {
'use strict';
var angular = require('angular');
var app = angular.module('App');
app.service('Service1', function () {
});
});
第二個JS文件:
define(function (require) {
'use strict';
var angular = require('angular');
var app = angular.module('App');
app.service('Service2', function () {
});
});
在require js配置中,我給出了腳本捆綁包的路徑,可以看到JS文件被捆綁和縮小並被加載。 但是我們收到一個錯誤“ 未定義Service2 ”。
當我合並兩個文件或從單個文件中刪除“ define(function(require)) ”時,一切工作正常。
合並文件:
define(function (require) {
'use strict';
var angular = require('angular');
var app = angular.module('App');
app.service('Service1', function () {
});
app.service('Service2', function () {
});
});
第一個JS文件:
'use strict';
var angular = require('angular');
var app = angular.module('App');
app.service('Service1', function () {
});
第二個JS文件:
'use strict';
var angular = require('angular');
var app = angular.module('App');
app.service('Service2', function () {
});
我無法合並上述文件,因為我有大量的JS文件列表。
我不是100%確定如果刪除“ define(function(require)) ”會帶來什么影響。
在我的方案中使用MVC的捆綁和縮小功能的最佳方法是什么?
謝謝。
傳遞給define的函數只有在其他人需要時才能運行。 因此,您的服務2未定義錯誤可能是因為您沒有明確要求它。
require(['First', 'Second'], function () {
//Use Service1 and Service2
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.