我对Node非常陌生,并试图了解应用基础知识.我很好奇为什么这两个命令:
节点app.js
--vs--
npm开始
输出相同的东西到控制台,似乎继续"监听",但为什么当我尝试访问http:// localhost:3000时,我只在运行第一个命令时得到404.
我看到Express 4似乎有一个不同的应用程序结构,但为什么一个成功侦听而另一个没有,尽管在控制台中有相同的行为?
任何解释都有帮助.谢谢!
有趣的是,我从未遇到过这个!
我从来没有想到一个人可以在一张桌子上拥有"多对多"的关系 - 直到我开始研究用户可以互相"交朋友"的系统(社交网络).
标准查找表,至少在我习惯使用它的方式,在这里是不合适的.让我们保持简单:
用户表具有"id"和"name"列.
User_relationship表具有"uid1"和"uid2",表示"朋友"或"芽"或"好友"或"其他任何"的用户.
很明显这里的问题是什么 - uid1和uid2是来自同一个表的同一列的相同数据类型,这意味着唯一键变得有缺陷.
例如:uid1 = 1 uid2 = 2
是相同的:
uid1 = 2 uid2 = 1
因此,如果查询执行错误,则可以返回2条记录或0条记录.
本着设计好表的精神,我不想两次扫描整个表以检查现有值.
处理这个有什么技巧吗?这是一个从未发生过的设计问题,它让我感到烦恼,因为我知道有一些简单的技巧可以让它发挥作用.
在你问之前,我还没有尝试过任何东西,因为我已经看到我最喜欢的关联方式(查找表)不足以满足我的需求,我需要一些帮助 - 我在SO或Google上找不到任何东西:(
提前致谢.
我正在使用服务来使用组件门户实例化Angular Material CDK Overlays.
创建门户并将其附加到覆盖后,是否有任何方法可以访问门户创建的组件的组件引用?我希望能够从外部收听该组件的事件.例如:
const portal = new ComponentPortal(MyCoolComponent, /* ...etc */);
this.overlay.attach(portal);
// I'd like to be able to do something like...
// portal.MyCoolComponent.someEventEmitter.subscribe();
Run Code Online (Sandbox Code Playgroud)
我已经搜索了文档和来源,找不到办法做到这一点.我可能不得不求助于从服务中注入一个非常混乱的组件回调.
有谁知道如何做到这一点?
我很想知道我正在考虑的是不好的做法,或者如果因为这是一个特定而慎重的选择,那实际上是一个不错的主意.我想存储特定城市中发生的事件的日期信息.我想将这些数据存储为UTC时间戳.简单地存储时间戳和城市ID /国家ID(与特定时区相关联)而不是存储每个事件的时区不是一个好主意吗?我问,因为时区可以改变,但城市ID在数据库中永远不会改变.一旦服务器在时区更改的(不太可能的)事件中与最新时区同步,该事件将是独立的并且不受该更改的影响.但是,假设时区改变了它的边界,那么之前在该时区发生的事件可能在它之外.这样做似乎不明智吗?我只是想知道,我一直在寻求最佳实践,但在这种情况下,这实际上似乎是一个好主意.这特别是因为应用程序设计模型永远不会改变 - 事件将始终与特定城市相关联.
基本流程将是:
具有日期/位置的事件数据以ISO-8601 YYYY-MM-DD字符串等标准格式进入系统.
系统将日期转换为UTC时间戳,并使用该时间戳和事件的城市ID将日期与事件一起存储.
当用户请求查看该事件时,系统会提取与该事件关联的时间戳和城市信息,并使用城市的时区在显示时相应地格式化日期.
这是一个糟糕的主意吗?这有什么好处,存储TZ Offset的概念是否同样可以消除这个问题?
这个可能非常简单,但我想弄清楚它会发疯。
我在外部 index.ts 文件中有一个非常简单的自执行函数,需要在 window 对象上注册一个全局变量。我想像这样分配它:
(() => {
window.myCustomGlobal = new MyCustomGlobal();
})()
Run Code Online (Sandbox Code Playgroud)
我在 index.ts 旁边创建了 index.d.ts:
import { MyCustomGlobal} from './classes';
declare interface Window {
myCustomGlobal: MyCustomGlobal;
}
Run Code Online (Sandbox Code Playgroud)
上面没有错误,一切看起来都很好。应用程序编译正常。
但是,在 IDE 中,我收到一个错误:
ts2339: Property 'myCustomGlobal' does not exist on type 'Window'
我一生都无法弄清楚究竟是什么让 Typescript“弄清楚”要包含什么 .d.ts 文件。在某些库中,将 .d.ts 文件与 .js 文件放在一起会导致它被拾取,并且工作正常。事实上,我使用了与上面完全相同的接口和一个全局第三方库,效果很好;似乎我的 IDE 无法接收它。
我已经尝试添加index.d.ts到tsconfig.jsoninclude以及files没有运气。
有人可以解释一下,就像对孩子一样,是什么导致 TS 拿起声明文件?有时我觉得我明白了,然后在像这样愚蠢的简单例子中,我觉得自己像个白痴。
谢谢
这是针对Angular的2.1.0最终版本.
我正在尝试动态实例化从配置JSON文件传递的类型的组件.我能找到的最好的东西是ComponentFactoryResolver,然而我发现的所有用法似乎都是将实际Type对象传递给解析器.
有没有办法Type从字符串中获取?因为目前,将类型作为字符串传递给我错误:
No component factory found for MyComponent
相关代码:
StructureBuilder组件:
private renderComponent(config:any) {
let configComponents = config.components;
if(config.hasOwnProperty('components') && configComponents.length){
for(let i = 0, len = configComponents.length; i < len; i++){
this.componentResolver.resolveComponentFactory(configComponents[i]);
}
}
}
Run Code Online (Sandbox Code Playgroud)
其中config.components是一个使用Typeas作为值的字符串数组.
并在模块定义(Structure.module.ts)
@NgModule({
declarations: [
MyComponent,
StructureBuilder_Cmp
],
entryComponents: [
MyComponent
]
//Etc...
});
Run Code Online (Sandbox Code Playgroud)
就稀疏文档而言,这正是你应该如何做到的.
如果我将传入的动态字符串更改为configComponents[i]实际导入的类型引用MyComponent,则可以.
基本上,问题是:有没有办法使用resolveComponentFactory字符串来解析组件,如果没有,是否有办法Type从字符串值获取引用?
angular ×2
mysql ×2
angular-cdk ×1
express ×1
javascript ×1
node.js ×1
npm ×1
php ×1
timestamp ×1
timezone ×1
typescript ×1