爲了瀏覽器和節點之間共享AMD模塊,我使用的是在這兩個地方(見RequireJS in Node)RequireJS。RequireJS在節點(與use.js如)不使用插件依賴性
服務器/ dataDao.js:
var requirejs = require('requirejs');
var dataDao = module.exports = {};
requirejs(['client/resource'], function (Resource) {
...
});
客戶端/ resource.js:
define(['underscore'], function (_) {
...
});
這通常被工作正常,只要共享模塊不涉及任何依賴關係,唐在服務器上工作。
我想向大家介紹use.js,然而,爲了避免手工包裝非AMD兼容庫像下劃線。爲此,我必須以use!
(在RequireJS中觸發使用插件)前綴列出的依賴項作爲前綴。
客戶端/ resource.js:
define(['use!underscore'], function (_) {
...
});
這非常適用於瀏覽器,但會導致節點錯誤:
Error: Calling node's require("use") failed with error: Error: Cannot find module 'use'
我相信這不是特定於使用插件,但也文字等
有其他人遇到這個問題?
什麼是你的配置看起來像? – fncomp 2012-04-20 05:44:39