Articles of requirejs

我如何findnpm包的哪些部分在浏览器中工作,哪些不是?

据我所知, 几乎所有的NPM包(即在npmjs.org上列出)在浏览器中都像一个魅力,使用像Require.js这样的加载器。 但是很显然,NPM软件包的某些function(例如,访问操作系统文件系统)不能在浏览器内部使用,如果尝试的话,我认为会导致不正确的错误。 我的理解有多正确? 有没有什么方法可以find一个NPM包中的哪些方法在浏览器中工作,哪些不会呢?

在Require.js优化器中打包* .html模板?

如何将一个Angular.js应用程序中的HTML模板(又名“partials”)封装在一起,然后将它们连接在一起进行分发? 有没有一种很好的方法将它们包含在单个文件中,还是应该压缩包含main.js ,/ /templates/*.html / /styles/app.css . /templates/*.html和/styles/app.css子目录的文件夹? Require.js优化器将所有JS文件压缩到适合分发的单个文件myapp.min.js ,但HTML文件仍被引用为单个文件。 作为背景,代码位于Node.js服务器中: public/ /app/main.js /app/app.js /app/directives/*.js /app/filters/*.js /app/factories/*.js /app/other/*.js /app/templates/*.html 在运行r.js之后, public/app/**所有文件都对位于不同目录public/build/**双胞胎进行了优化。 但浏览器仍然会在原始位置/app/templates/*.html查找模板。 所以推测客户可能不得不把它们放在同一个目录中,这看起来是不公平的限制。 将RequireJS Javascript codebase最小化为单个文件

Node.js require()和RequireJS require()之间有什么区别?

我今天设置了一个定期客户端RequireJS的网站。 比我做了一些关于节点的研究,得到了安装,并在节点中设置了我的第一个模块。 当我设置第一个需求时,我加载了Require.JS文件,并得到了所有这些。 令我困惑的是,我创build了一个名为test.js的文件,其中包括: var require = require("requirejs"); 这实际上是包括节点的需求,而不是原来的需求库我正在使用的权利? 所以他们是完全不同的? 他们可以一起使用吗?

无法在同一个TypeScript项目中使用requireJS和Node的Require

我有一个针对Node和浏览器的打字稿项目。 我在某些脚本中使用了Node的require() ,并且在其他脚本中require() 。 我的项目目录如下所示: myProject \– a.ts \– b.ts \– node.d.ts \– require.d.ts 其中a.ts包含: /// <reference path="./node.d.ts" /> var cp = require('child-process'); var a = 'hello world' export = a 和b.ts包含: /// <reference path="./require.d.ts" /> require('hello',function(x){console.log('world')}); var b = 'hello world' export = b 其中require.d.ts和node.d.ts从DefinitlyTyped获得。 当我编译我的项目,我得到这些错误: b.ts(2,1): error TS2346: Supplied parameters do not match […]

我怎样才能以简单的方式将函数转换为RequireJS中的模块?

我一直在阅读文档,但我似乎无法以一种简单的方式做到这一点。 我觉得我对node.js使用相同的单词,例如require , exports , module等,太多了。 想象一个主要的脚本是这样的。 (想象这些function是复杂的) require(['jquery', 'domReady!'], function($) { $("#staticButton").click(function() { showMessage('What does this button do?'); }); function showMessage(message) { alert(message); } }); 现在想象我想在多个脚本中使用showMessage() 。 我怎样才能做到这一点? 在Node.js我会将showMessage()附加到showMessage.js并且在我想要使用它的任何地方执行此类操作: require(['jquery', 'domReady!'], function($) { var showMessage = require('showMessage'); // Easy huh? $("#staticButton").click(function() { showMessage('What does this button do?'); }); }); 但是对于RequireJS这给了我首先需要加载的错误。 在使用上面的语法之前,我是否require或者define这个? 我真的需要在主脚本require数组中添加它吗? 我不喜欢那样 如果你有20个function呢? […]

Karmatesting运行器RequireJS 404错误,不提供内容

获取我的app.js文件的404错误,即使它存在于它所说的URL没有(服务与业力)。 任何想法这是什么以及如何解决? >疯了。 DEBUG [web-server]: serving: /Users/tina/Sites/node_require/client/src/app.js DEBUG [web-server]: serving: /Users/tina/Sites/node_require/client/src/views/add.js WARN [web-server]: 404: /base/client/src/app 我的目录结构: karma.conf.js bower_components/ client/ src/ -app.js -main.js spec/ -app.test.js -test.main.js views/ -add.test.js 我的karma.conf.js: // Karma configuration // Generated on Mon Apr 13 2015 19:36:01 GMT-0400 (EDT) module.exports = function(config) { config.set({ // base path, that will be used to resolve […]

Windows上的RequireJs优化失败

试图在Windows上优化一个基于requirejs的项目。 将r.js.cmd与以下的NodeBuild.js文件放在Scripts文件夹中。 ({ baseUrl: ".", paths: { jquery: "empty:" }, name: "main", out: "main-built.js" }) 使用该命令时 node r.js.cmd -o nodeBuild.js 我得到以下回应: r.js.cmd:1 (function (exports, require, module, __filename, __dirname) { @IF EXIST "%~dp0 ^ SyntaxError: Unexpected token ILLEGAL at Module._compile (module.js:439:25) at Object.Module._extensions..js (module.js:474:10) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Function.Module.runMain (module.js:497:10) at startup (node.js:119:16) […]

咕噜的Nodeunit找不到模块“点击”

所以,在本教程中 ,我决定添加一些unit testing到我的node.js应用程序。 我gruntfile似乎是好的,当我inputgrunt nodeunit我唯一的testing运行得很好,但之后,它崩溃与错误Fatal error: Cannot find module 'tap' : $> grunt nodeunit Running "nodeunit:all" (nodeunit) task Testing db.test.js .OK Fatal error: Cannot find module 'tap' 我对这个模块一无所知,但是在googliing之后,似乎是nodeunit需要的东西。 实际上,存在$MY_NODE_APP/node_modules/nodeunit/node_modules/tap ,当我在$MY_NODE_APP/node_modules/nodeunit启动节点并在交互式控制台中inputrequire('tap')时,的东西,给我一个印象,它的工作原理应该。 所以,显而易见的问题是:为什么我得到这个错误,我该如何解决? Gruntfile: module.exports = function(grunt) { grunt.initConfig({ nodeunit: { all: ['./**/*.test.js'] } }); grunt.loadNpmTasks('grunt-contrib-nodeunit'); }; 更新 :安装了我的项目,但它也没有帮助。

RequireJS 2.1.9使用Grunt时会导致“最大调用堆栈..”错误

我正在使用Grunt构build一个多模块应用程序(Backbone,Marionette,RequireJS,Handlebars),但我一直得到“Error:RangeError:Maximum call stack size exceeded”消息。 如果我用2.1.5replacer.js 2.1.9文件,它可以工作。 我不知道哪里可以开始debugging。 注意:从节点运行相同的构buildconfiguration选项可以使用2.1.9 node r.js -o build.js 它只是不喜欢从Grunt跑。 r.js 2.1.9 grunt-cli v0.1.11 grunt v0.4.2 这是我的Gruntfile.js module.exports = function(grunt) { grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), requirejs: { compile: { options: { appDir: "src/main/webapp", baseUrl: 'js/', dir: "target", mainConfigFile: 'src/main/webapp/js/require-config.js', //optimizeAllPluginResources : true, findNestedDependencies: true, //removeCombined : true, //optimize : 'none', //inlineText : […]

require.js – 运行时dynamicvariables来构buildpath

是否有可能将运行时信息注入到一个require.js“数据主”脚本并用于构buildpath? 更多解释… 在我的node.js app.js中,我dynamic地findconfiguration的“主题”的path,如下所示: var themePath = require('./conf/config.js').config.theme.full_path; 后来在require.js数据主脚本中,我想在定义path时加上这个主题path。 所以假设我已经设置了我的requirejs data-main =“xxx”,下面是xxx文件,我想要做如下的事情: require.config({ baseUrl: "/js/", paths: { "templates" : DYNAMIC_THEME_PATH + '/templates', "views" : DYNAMIC_THEME_PATH + '/views' } }); 我不确定1.如何从这个require.js数据主文件中“查看”themePath,以及2.这甚至可能吗? 编辑 – 我的解决scheme 所以我遇到的真正的挑战是在服务器上发现运行时variables到require.js数据主脚本中。 在节点域,全球不对应客户端的窗口(当然),因为JavaScript是不是在浏览器呢..呃。 所以我不知道如何在客户端脚本中find这个可发现的东西。 好的,所以我能做的就是在ejs中注入发现的主题path,然后dynamic加载数据主脚本,如前所示: <script data-main="<%= theme_path %>/main" src="../js/libs/require-jquery.js"></script> 当然,这意味着我必须在主目录中有数据主脚本,这不是我最初的计划; 然而,它的优点是我可以使用相对path加载我的path/到/模板path/到/视图等。 最后,当人们回答他们自己的问题的时候,我有点讨厌…所以我会留下这个希望,希望有人能给我一个更好的build议,或者更好地解释这个,他们可以得到的信贷;)