Nodejs mvc 风格类似asp.net mvc 大家觉得怎么样?(已发布)
Nodejs mvc 风格类似asp.net mvc 大家觉得怎么样?(已发布)
#asp.net mvc 风格的 nodejs mvc 我以前从事很多 asp.net mvc 的项目,最近开始用 nodejs,看了 express,很简单很好入手,但是感觉不够强大,也或许是因为我还没有完全掌握 express,不管怎么样,不过我就是很想能有一个更适合自己的 mvc 框架,但是一直找不到,于是我决定用闲暇时间写一个类似 asp.net mvc 风格的 nodejs mvc 框架。
将会使用一样的层次划分:Area -> Controller -> Action
这是一个 controller.js 的例子:
var mvc = require('xxxx/mvc');
mvc.controller(function(req, res, end) {
this.action('index', function() {
end.redirectToAction('test','home', { id: 1 });
});
this.action('test', function(id) {
end.view({ id: id });
});
});
有人感兴趣吗? 求提各种意见~~~~
#2014.8.18新增 我的 nodejs MVC 终于发布了,求大神们star,求大神们fork,求各位大神拍砖。 https://www.npmjs.org/package/cat-mvc https://github.com/jszoo/cat-mvc
Node.js MVC风格类似ASP.NET MVC 大家觉得怎么样?
我之前参与过许多基于ASP.NET MVC的项目,最近开始尝试使用Node.js。我发现Express框架非常简单易上手,但它似乎缺少一些我想要的强大功能。也许是我还没有完全掌握它,但我确实希望有一个更符合我个人需求的MVC框架。因此,我决定利用业余时间来开发一个类似于ASP.NET MVC风格的Node.js MVC框架。
层次划分
这个框架将采用与ASP.NET MVC相同的层次划分方式:
- Area(区域)
- Controller(控制器)
- Action(动作)
示例代码
以下是一个简单的controller.js
示例代码,展示了如何定义一个控制器及其动作。
var mvc = require('cat-mvc'); // 假设我们正在使用名为'cat-mvc'的框架
mvc.controller(function(req, res, next) {
this.action('index', function() {
// 重定向到另一个动作
next.redirectToAction('test', 'home', { id: 1 });
});
this.action('test', function(id) {
// 渲染视图,并传递参数
next.view({ id: id });
});
});
解释
require('cat-mvc')
: 引入了我们自己开发的cat-mvc
框架。mvc.controller(...)
: 定义了一个控制器,该控制器接收一个函数作为参数。这个函数内部通过this.action(...)
来定义具体的动作。next.redirectToAction(...)
: 这个方法用于重定向到另一个动作,参数包括动作名称、控制器名称以及可选的参数对象。next.view(...)
: 这个方法用于渲染视图,并传递数据给视图进行显示。
反馈
如果你对这个项目感兴趣或有任何建议,请告诉我!我很乐意听取大家的意见和建议,以帮助改进和完善这个框架。
更新
我的Node.js MVC框架终于发布了,欢迎大家试用并提出宝贵意见!
希望这个框架能够为Node.js开发者带来便利,也期待更多的反馈和贡献!
just do it
本身不就是这样吗
express 就有mvc的感觉呀
koa 难道做的不够好?
哈哈 !同是KOA粉丝 看完KOA 我果断放弃ASP.NET MVC 看来express诱惑力不大
我的 nodejs MVC 终于发布了,求大神们star,求大神们fork,求各位大神拍砖。 https://www.npmjs.org/package/cat-mvc
这效率这执行力,赞!
赞,计划做下贡献,等你把文档写好了,我把它翻译成中文 :D
我也有这个打算, 楼主已经做了啊
没人推荐sails么,多好用的框架
关于Node.js的MVC风格框架,与ASP.NET MVC的对比和实现方式,这里提供一些基本思路和示例代码。
基本思路
在Node.js中,虽然Express已经非常流行且功能强大,但如果你想要一种更接近ASP.NET MVC的开发体验,可以考虑使用一些专门为Node.js设计的MVC框架。例如cat-mvc
,这个框架试图模仿ASP.NET MVC的风格,提供了类似于Area、Controller和Action的结构。
示例代码
假设我们正在构建一个简单的博客应用,并希望实现以下结构:
- Area:
Admin
- Controller:
PostController
- Action:
Index
和Detail
// postController.js
var catMvc = require('cat-mvc');
catMvc.controller('Admin/PostController', function(req, res, next) {
this.action('index', function() {
// 这里处理首页逻辑
res.render('admin/post/index', { posts: [] });
});
this.action('detail', function(id) {
// 这里处理详情页逻辑
res.render('admin/post/detail', { postId: id });
});
});
在上面的例子中,我们定义了一个PostController
,它包含两个动作:index
和detail
。每个动作都会接收请求参数,并根据需求渲染不同的视图。
结论
Node.js社区中有许多优秀的MVC框架可以选择,如cat-mvc
等,它们试图提供一种更熟悉的开发体验,尤其是对于那些来自ASP.NET背景的开发者。当然,这些框架的功能可能不如Express全面,但在某些场景下可能会更符合你的需求。
希望上述信息对你有所帮助!如果你有任何具体的需求或问题,欢迎继续探讨。