小编The*_*heo的帖子

节点模块化架构

我正在构建一个相当大的nodejs应用程序.为了避免单片节点应用程序,我已经沿着更模块化系统的架构路线走下去,将几个组件分解成单独的npm模块.这些是使用npm发布并安装在依赖模块中.我有大约6个不同的模块(我想要进一步突破),现在管理包变得很困难.

问题是:

  1. 有嵌套依赖,所以如果我更改模块A而模块B依赖于模块A而模块C依赖于模块B,那么当我更新模块AI时需要发布它的新版本,这意味着我需要在模块中更新它B,这意味着我还需要发布它,然后最后我需要在模块A中安装新版本......你可以看到那可能是一个痛苦的地方.更重要的是,所有package.json中的版本更新都是手动的,因此容易出错,等待每次发布都很耗时.
  2. 模块可以共享npm依赖项,因此有时会在程序包更新时发生冲突.模块越多,冲突的可能性就越大.

好处是我们有一个非常模块化的系统,其中库可以轻松地重复使用,并且由于不存在任何循环依赖性,因此存在明确的模块层次结构.

可能的解决方案

  1. Monolith - 在单个存储库中将依赖关系作为单个应用程序进行管理,每个模块只是成为一种服务.这意味着只需要进行一次更新,并且所有模块apis都将同步.但是,引用代码中的库可能有点痛苦(因为我相信它们必须相对于本地文件被引用),我不确定如何强制执行模块之间的结构层次结构并且代码重用将会对存储库外的模块更难.

  2. 微服务 -每一模块的微型服务.这保留了模块化系统的所有好处,但我担心它会给构建增加很多复杂性,并且管理所有服务本身就会成为一个全职工作.

  3. 继续 - 找出一种方法来保持当前的体系结构,但消除推送更新的麻烦等.也许脚本更新版本和shrinkwrap以确保正确的依赖.我认为这既困难又可能导致它成为不同种类的单片系统.

选项1对我来说似乎最容易管理,但如果我不需要,我不想失去模块化结构.

这是一个相当广泛的问题,但任何建议/意见/评论都会非常有用.

谢谢

architecture node.js npm

21
推荐指数
1
解决办法
2678
查看次数

掩盖UIView

我一直在视图控制器中使用以下代码:

UIView *view = [[CustomView alloc] init];
UIView *mask = [[CustomMask alloc] init];
[view layer].mask =[mask layer];
Run Code Online (Sandbox Code Playgroud)

它会按我想要的方式掩盖视图.

但是,当它不在视图控制器中时,我收到错误:

'请求成员'掩码'在非结构或联合的东西'

例如,我想在CustomView类本身中应用该掩码.所以我会:

UIView *mask = [[CustomMask alloc] init];
[self layer].mask =[mask layer];
Run Code Online (Sandbox Code Playgroud)

这会产生错误.如果我在AppDelegate类中使用两个图像执行此操作,则会再次出现相同的错误.

任何人都可以解释我如何得到我想要的结果.

非常感谢

xcode mask uiview ios

5
推荐指数
1
解决办法
4433
查看次数

在Visual Studio中更改asp.net项目的输出目录

我是asp.net的新手(但不是c#),我正在尝试将输出目录从\ bin移动到..\Build\debug.我已在构建属性中完成此操作,并且构建正常并将其放入正确的输出目录中.但是,当我尝试运行该应用程序时,我收到以下错误:

'/'应用程序中的服务器错误.

分析器错误

说明:解析为此请求提供服务所需的资源时发生错误.请查看以下特定的解析错误详细信息并相应地修改源文件.

分析器错误消息:无法加载类型"MyApp.Backend.WebApiApplication".

来源错误:

第1行:<%@ Application Codebehind ="Global.asax.cs"Inherits ="MyApp.Backend.WebApiApplication"Language ="C#"%>

源文件:/global.asax行:1

版本信息:Microsoft .NET Framework版本:4.0.30319; ASP.NET版本:4.0.30319.18045.

它与Visual Studio托管网站的方式有关吗?任何帮助,将不胜感激.

asp.net visual-studio-2012

5
推荐指数
1
解决办法
2618
查看次数

在不显示视图控制器的情况下使用 MFMailComposeViewController

我正在使用 MFMailComposeViewController 发送带有附件的电子邮件。在所有指南中,它选择将视图控制器呈现为模态视图,以便用户可以更改字段并选择发送或取消。

我不希望人们能够更改我输入的信息,所以我想知道是否可以强制它发送电子邮件而不进入模态视图?

我知道将 url 与 mailto 一起使用,但相信您无法添加附件。

如果有人知道这是否可行,或者如果他们知道如何做甚至更好,我将非常感谢您的帮助。

非常感谢。

email xcode attachment modalviewcontroller ios

0
推荐指数
1
解决办法
2890
查看次数