Articles of 插件

Node.JS的插件系统

我目前正在使用Express来处理Node.JS中的一个大型应用程序。 我希望能够做到即插即用,所以我开始编写我自己的小插件系统,其文件结构如下所示: root/ | plugins.json # configures all plugins | plugins # contains all plugins | | MyPlugin # contains MyPlugin | | | MyPlugin.js # defines Application hooks for MyPlugin | | | … MyPlugin/当然也包含路由,控制器,视图,特定的资源等。 app将调用MyPlugin实例的标准挂钩是: moduleInit(app) # before starting the server or module has been loaded (if server is already running at module […]

自定义的咕task任务命名约定

有没有关于命名包含多个单词的自定义任务的任何约定? 例如: grunt-json-schema grunt插件有json_schema任务 。 一个名称包含破折号( – ),另一个名称包含下划线( _ )。 显然,dashed-name不能用作JavaScript对象键: grunt.initConfig({ json-schema: { // WON'T work 他们必须用引号括起来: grunt.initConfig({ 'json-schema': { // will work 我检查了所有官方插件( grunt-contrib-* ),但它们都只包含一个单词。 造成这个问题的动机很简单:我只是想遵循惯例。

webpack 2和stylus-loaderconfiguration文件的例子

我坚持得到手写笔与webpack 2一起工作。我试图将手写笔加载模块添加到我的webpack.config,但是我不知道如何做到这一点。 我不是,我没有阅读文档: https://github.com/shama/stylus-loader 乍一看这个例子代码看起来像一块蛋糕(请记住,我在这里说Webpack 2,而不是Webpack 1): module: { rules: [ { test: /\.styl$/, use: [ 'style-loader', 'css-loader', { loader: 'stylus-loader', options: { use: [stylus_plugin()], }, }, ], } ], }, 这里的问题是stylus_plugin函数,根据文档,需要通过以下方式进行要求: var stylus_plugin = require('stylus_plugin'); 但是,在npm repo中不存在像stylus_plugin这样的npm模块。 所以,也许有人可以帮助我在webpack上运行铁笔,也许有人甚至可以提供一个configuration的例子。 附录,2017年2月9日。这适用于我(使用手写笔): module: { rules: [{ test: /\.styl$/i, use: [ 'style-loader', 'css-loader', 'stylus-loader' ] }] } 为了明确起见:每个单独的加载器代表一个单独的插件。 […]

使用node-gyp构build时无法加载node.js本机插件,但在使用Visual Studio构build时可以使用

我已经为node.js编写了一个本地插件,使用不带node-gyp的MSVC ++对其进行编译,并在节点REPL和应用程序中成功使用它。 我正在使用x64节点并编译一个x64插件。 我试图用node-gyp来构build这个东西。 我已经得到node-gyp来生成一个Visual Studio解决scheme并编译它,但出来的插件不起作用。 我得到的唯一错误是这样的: Error: The specified procedure could not be found. at Object.Module._extensions..node (module.js:480:11) at Module.load (module.js:356:32) at Function.Module._load (module.js:312:12) at Module.require (module.js:362:17) at require (module.js:378:17) at repl:1:13 at REPLServer.self.eval (repl.js:111:21) at rli.on.e (repl.js:260:20) at REPLServer.self.eval (repl.js:118:5) at Interface.<anonymous> (repl.js:250:12) 当我运行一个脚本,试图加载插件,我得到这个: module.js:480 process.dlopen(filename, module.exports); ^ Error: The specified procedure could not […]

Node.js和TeamCity

我有以下问题: 在我们公司,我们开始一个新的Web项目,有很多.js .css文件。 我们公司是一家Java公司,意味着所有的开发工作都在Java / Maven / Team City中完成。 由于公司已经在使用TeamCity,所以我们也想将它用于Web构build,我们正在尝试在构build过程中引入Node.js和GruntJs。 我想知道是否有人在TeamCity中设置/configurationNode.js像Runner一样? 最后,我们要“提交”一个更改,然后构build,这个构build将通过Node.js runner来完成。 我find了TeamCity的下面的插件 。 任何帮助将不胜感激

用于Node.js的沙盒插件

我是一个完整的节点noob,所以我很抱歉,如果这个问题有一个明显的答案。 我正在寻找创build一个Web应用程序,将运行来自不受信任的来源(即社区提交)的插件。 所以我需要将这些插件locking到只允许某些访问的沙箱(不能写入磁盘等)。 理想情况下,该插件只能使用某些批准的节点包和API。 这是可能的节点? 如果是这样,你可以指向一个包或文件,让我开始?

你如何制作Hapi.JS插件/模块?

我对Node和Hapi.js都是新手 ,但不是编程。 我已经做了一些简单的Hapi.js服务器,只是为了testingJoi和其他插件。 我现在试图理解如何以Hapi的方式打包大量的function,以便我们可以在未来的项目中重复使用它们,并与全世界分享。 有没有什么好的资源可供学习? 编辑:我已经find了一些很好的资源,但不是深入了解插件系统的细节。 https://github.com/hapijs/hapi/issues/1489 – 入门教程比赛 https://github.com/otodockal/hapi-tutorial – 参加上面的比赛,并在插件部分

你可以使用Hapi.JS作为微服务框架吗?

我已经看到了最近关于微服务( http://martinfowler.com/articles/microservices.html )的各种有趣的演讲,也想知道我们如何将这些概念与Hapi.JS一起使用。 邮件在线(地球上最大的在线报纸)的首席技术官检查HAPI及其与微服务有关的插件系统: http://www.nearform.com/nodecrunch/how-node-js-has-revolutionized-the-mailonline 一个微服务架构被使用,这是受到Fred George的启发,这个架构与hapi插件架构略有不同,构build应用程序以便随时可以维护,这是未来的一个关键挑战,微服务是解决scheme这个。 MailOnline也是Joyent(内部部署SDC和公共云)的重要用户。 还有一些专门为微服务设置的新节点框架(senecajs.org) 有没有人看到任何案例研究(理想的教程)利用哈皮这种方式?

CSSLint:如何configuration任务只是打印错误不警告

我是Grunt – csslint插件的新手,在我运行完cssLint任务之后,有很多错误和警告我无法遵循。 那么如何configuration任务只是打印出来的错误,而不是警告?

为基于nodejs的MVC平台构build一个插件系统

我希望能够在插件样式系统中为我的应用程序构buildfunction,原因如下: 新的项目可以select哪些插件是必要的,不需要代码function 其他开发人员可以为系统构build插件,而无需太多的核心工作知识。 我真的不知道如何去实施这个。 我想有一个plugins文件夹来主办这些分开,但我想我的问题是: 插件如何与核心系统交互? 文件夹结构如何工作? 每个人都会拥有标准的MVC结构:控制器,服务,模型,视图等? 我想如果有人有一个教程或一些文件有关这种技术,这将是有益的。 我已经做了一些search,但是它们与实际使用的代码有很密切的关系,而不是概念,而且我也没有发现任何与nodejs特别相关的东西。