我不知道如何陈述问题......所以,基本上我正在使用带有Typescript的Angular 2编写我自己的应用程序.我希望能够像我们使用Angular一样导入模块,我们可以在一行中导入多个相关模块.例如,我们可以在angular2 beta中执行此操作:
import { Component, OnInit, Input } from 'angular2/core';
Run Code Online (Sandbox Code Playgroud)
我想用我的应用程序做类似的事情.例如:
import { UserService, RoleService } from 'my-project/services';
此外,我希望能够为模型,管道,组件等做同样的事情......
还有一件事,文件夹结构将是这样的:
src/app/services
src/app/components
src/app/models
src/app/pipes
我试图做的事情:在路径src/app上,我在文件中创建了每个'bundle',比如services.d.ts,models.d.ts,pipes.d.ts ......然后我试着映射SystemJS配置,如下所示:
(function(global) {
// map tells the System loader where to look for things
var map = {
'app': 'src/app', // 'dist',
'rxjs': 'node_modules/rxjs',
'my-project/components': 'src/app/components',
'my-project/services': 'src/app/services',
'my-project/models': 'src/app/models',
'my-project/pipes': 'src/app/pipes',
'@angular': 'node_modules/@angular'
};
// packages tells the System loader how to load when no filename and/or no extension
var packages = { …Run Code Online (Sandbox Code Playgroud) 好吧,我继续使用我的Phonegap应用程序开发处于两难境地:对于实时事件通知,我应该使用Azure Notification Hub还是SignalR?
据我了解,SignalR通过使用Web套接字适用于实时Web应用程序.而通知中心可以轻松地跨多个平台发送推送通知.为了便于回复,让我解释一下我目前拥有的结构以及我的应用程序应该做什么.
应用程序:它基本上是一个用户可以创建组并邀请其他用户的应用程序.用户还可以使组"在线",以便其他用户可以"输入"该组.当该群组在线且用户已进入时,他们可以发送问题,交换消息等.
需求:当用户在组中提问或进入/离开组时,其他用户需要在应用屏幕中看到新用户.我可以在服务器上进行轮询以检查并根据更新UI,但这是现代人不允许的.我对这个主题的搜索引出了两件事:SignalR和NotificationHub.
当前架构:客户端 - >带有backbone.js的PhoneGap应用程序.后端 - >带有实体框架和Azure Sql Server的Asp.NET Web API.
我已经考虑过使用通知集线器和标签了.例如,当用户进入在线组时,它向服务器发送请求以注册"grouplisten:{groupId}"标签.然后,服务器将标记注册到用户的设备,并向标记为"grouplisten:{groupId}"的所有其他设备发出通知,以便其他用户使用最近加入的用户更新UI.此外,当用户离开组时,它向服务器发送请求以删除"grouplisten:{groupId}"标签,并且还通知具有"grouplisten:{groupId}"的设备.但是通过这个简单的例子,看起来这样会变得无法管理.