我有大量的js代码,它们使用了许多辅助数组,可以非常快速地访问对象.所以我尝试移植此代码并失败.很明显我还不太了解TS.
我已经找到了这个问题的答案,并找到了创建界面等建议...但这似乎有点偏离轨道.
所以看似明显的尝试:
class Foo {
allObjects: MyObject[];
constructor() {
this.allObjects = [];
}
}
Run Code Online (Sandbox Code Playgroud)
MyObject的地方 - 简化:
class MyObject {
_id: String;
public getId(): String {
return this._id;
}
}
Run Code Online (Sandbox Code Playgroud)
我相信:
myObjectInstance: MyObject;
fooInstance.allObjects[myObjectInstance.getId()] = myObjectInstance;
Run Code Online (Sandbox Code Playgroud)
会没问题...我看到可爱的TS2342错误(索引表达式参数必须是'string','number'或'any'类型)这对我没有意义,因为getId()是'string' .这似乎不应该那么难.所以你的帮助将不胜感激......
我昨天犯了升级到15.04的错误:-).现在我的mongod无法启动:
MongoDB shell version: 2.6.9
connecting to: test
2015-04-26T08:45:08.339-0600 warning: Failed to connect to 127.0.0.1:27017, reason: errno:111 Connection refused
2015-04-26T08:45:08.339-0600 Error: couldn't connect to server 127.0.0.1:27017 (127.0.0.1), connection attempt failed at src/mongo/shell/mongo.js:146
exception: connect failed
Run Code Online (Sandbox Code Playgroud)
sudo服务mongod状态
? mongod.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
Run Code Online (Sandbox Code Playgroud)
接下来,我搜索了与mongodb相关的锁定文件并将其删除. - 没有帮助.接下来我做了:
sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/
sudo service mongodb start
sudo -u mongodb mongod --repair --dbpath /var/lib/mongodb/
2015-04-26T08:56:39.844-0600 [initandlisten] MongoDB starting : pid=17760 port=27017 dbpath=/var/lib/mongodb/ 64-bit host=Parke.dynu.com …Run Code Online (Sandbox Code Playgroud) 有相当多的人询问有关向textAngular添加字体和背景颜色的问题.我对我的解决方案非常满意,所以我想我会分享这个.我还有最后一个问题:在点击编辑器时,是否有一种简单的方法可以让颜色选择器关闭?没有修改我想避免的textAngular代码?
在这个解决方案中,我使用了angular-bootstrap-colorpicker,所以我还添加了作为依赖项到我的应用程序:[...'colorpicker.module','textAngular',...].
关注https://github.com/fraywing/textAngular/wiki/Customising-The-Toolbar我在我的应用程序的配置部分:
$provide.decorator('taOptions', ['taRegisterTool', '$delegate', function(taRegisterTool, taOptions){
// $delegate is the taOptions we are decorating
// register the tool with textAngular
taRegisterTool('backgroundColor', {
display: "<button colorpicker class='btn btn-default ng-scope' title='Background Color' type='button' colorpicker-close-on-select colorpicker-position='bottom' ng-model='backgroundColor' style='background-color: {{backgroundColor}}'><i class='fa fa-paint-brush'></i></button>",
action: function (deferred) {
var self = this;
this.$editor().wrapSelection('backgroundColor', this.backgroundColor);
if (typeof self.listener == 'undefined') {
self.listener = self.$watch('backgroundColor', function (newValue) {
self.$editor().wrapSelection('backColor', newValue);
});
}
self.$on('colorpicker-selected', function () {
deferred.resolve();
});
self.$on('colorpicker-closed', function () {
deferred.resolve();
}); …Run Code Online (Sandbox Code Playgroud) 我有两个项目共享相同的aidl文件.
在第一个项目中,构建在Eclipse和Android Studio中运行完成.
在第二个项目中,构建在Eclipse中运行完成,但在Android Studio中我看到:
Error:[Tracker-PRO-Key] UNEXPECTED TOP-LEVEL EXCEPTION:
Error:[Tracker-PRO-Key] com.android.dx.util.ExceptionWithContext
Error:[Tracker-PRO-Key] at com.android.dx.util.ExceptionWithContext.withContext(ExceptionWithContext.java:46)
Error:[Tracker-PRO-Key] at com.android.dx.dex.cf.CfTranslator.processMethods(CfTranslator.java:344)
Error:[Tracker-PRO-Key] at com.android.dx.dex.cf.CfTranslator.translate0(CfTranslator.java:134)
Error:[Tracker-PRO-Key] at com.android.dx.dex.cf.CfTranslator.translate(CfTranslator.java:87)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main.processClass(Main.java:487)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main.processFileBytes(Main.java:459)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main.access$400(Main.java:67)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main$1.processFileBytes(Main.java:398)
Error:[Tracker-PRO-Key] at com.android.dx.cf.direct.ClassPathOpener.processOne(ClassPathOpener.java:135)
Error:[Tracker-PRO-Key] at com.android.dx.cf.direct.ClassPathOpener.process(ClassPathOpener.java:109)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main.processOne(Main.java:422)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main.processAllFiles(Main.java:333)
Error:[Tracker-PRO-Key] at com.android.dx.command.dexer.Main.run(Main.java:209)
Error:[Tracker-PRO-Key] at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
Error:[Tracker-PRO-Key] at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
Error:[Tracker-PRO-Key] at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
Error:[Tracker-PRO-Key] at java.lang.reflect.Method.invoke(Method.java:606)
Error:[Tracker-PRO-Key] at org.jetbrains.android.compiler.tools.AndroidDxRunner.runDex(AndroidDxRunner.java:139)
Error:[Tracker-PRO-Key] at org.jetbrains.android.compiler.tools.AndroidDxRunner.main(AndroidDxRunner.java:261)
Error:[Tracker-PRO-Key] at com.intellij.rt.execution.CommandLineWrapper.main(CommandLineWrapper.java:121)
Error:[Tracker-PRO-Key] Caused by: java.lang.NullPointerException
Error:[Tracker-PRO-Key] at com.android.dx.cf.code.ConcreteMethod.<init>(ConcreteMethod.java:87)
Error:[Tracker-PRO-Key] …Run Code Online (Sandbox Code Playgroud) 我有点困惑。我以为我基本上了解了 angular 组件的生命周期,但后来我遇到了一个有趣的案例,其中组件的 @Input 未定义。
在这种情况下,我的应用程序有两个实例。给定的组件:LogoutWarning在注销挂起时显示,然后用户可以刷新登录令牌并继续。这很好用。
该实例在第一个应用程序更新登录令牌时出现,并隐藏显示LogoutWarning组件。在这个第一个应用程序中一切都很好。
第二个应用程序也显示了LogoutWarning组件,因为它检测到登录令牌将要过期并显示LogoutWarning modal,然后它注意到登录令牌已更新并调用 LogoutWarning.cancel() 以隐藏该模式。在这种情况下, this.logoutWarningModal.hide() 会爆炸,因为 this.logoutWarningModal 是UNDEFINED,即使生命周期 ngAfterViewInit() 显示 this.logoutWarningModal 已定义。
在这一点上,我感到非常惊讶。如果我只是检查 this.logoutWarningModal 是未定义的,而不是调用 this.logoutWarningModal.hide() 一切正常。但是为什么 this.logoutWarningModal 在这里未定义???
LoutWarning组件的代码很简单:
@Component({
selector: 'logoutWarning',
template: `
<div bsModal #logoutWarning="bs-modal" [config]="{ show: true }" class="modal fade" tabindex="-1" role="dialog"
aria-labelledby="new application version avaliable" aria-hidden="true" (onHidden)="hidden()">
<div class="modal-dialog modal-sm">
<div class="modal-content">
<div class="modal-header">
<div class="app_header">
<div class="app_icon"><img src="assets/images/tracker_hi_res_512.gif"></div>
<div class="app_name">Tracker</div>
</div>
</div>
<div class="modal-body …Run Code Online (Sandbox Code Playgroud) 我已经设置了一个服务器,它为前端和 nodejs 后端托管了一个“angular2-webpack-starter”项目。nginx 默认有两个 proxy_pass,用于将连接映射到服务器上的正确位置。几乎一切都按预期工作......但是代理存在一个问题,sockjs-node/info这确实让我感到惊讶。
运行时我看到:
zone.js:1960 GET https://localhost:3000/sockjs-node/info?t=1490740454197 net::ERR_CONNECTION_CLOSED
Run Code Online (Sandbox Code Playgroud)
这两个代理是:
location ^~ /server/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header X-NginX-Proxy true;
proxy_pass https://127.0.0.1:9000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
location ^~ / {
#proxy_buffering off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://127.0.0.1:3000/;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
Run Code Online (Sandbox Code Playgroud)
我已经查看了这个问题的其他几个答案,但无济于事。我尝试在前端添加 cors 的东西,这是没有意义的,这没有效果。我尝试关闭 proxy_buffering 无济于事(正如我所料)。我什至添加了“underscored_in_headers on;” 在nginx中,无济于事。
其他人使用 webpack-dev-server 来做代理,但似乎 nginx …
我有一个基于Express的宁静应用程序,我决定使用supertest进行测试。这是我对supertest的首次测试,我感到困惑。路线之一是:
/api/version
Run Code Online (Sandbox Code Playgroud)
返回版本:
export function index(req: express.Request, res: express.Response) {
log('index of version.controller');
let ver = { version: version.getVersion() + ' & textAngular: v' + textAngularVersion.getTextAngularVersion() };
res.setHeader('Content-Type', 'application/json');
return res.status(200).json(ver);
}
Run Code Online (Sandbox Code Playgroud)
当我在Chrome的http:// localhost:9000 / api / version /中查看时,它会正常工作,我会看到:
{"version":"v0.00.000-38-gf395113 & textAngular: v1.5.16"}
Run Code Online (Sandbox Code Playgroud)
这是我所期望的。并且状态为预期的200(如果Chrome已将其缓存,则为304)。
但是,当我使用Mocha和Supertest进行测试时:
describe('GET /api/version', () => {
it('should respond with version', (done: any) => {
request(app.server)
.get('/api/version')
.expect('Content-Type', 'text/html; charset=UTF-8')
.expect(200)
.end((err: any, res: any) => {
if (err) {
return done(err);
}
done();
}); …Run Code Online (Sandbox Code Playgroud)