小编Sea*_*ell的帖子

在类型保护错误TS2532之后,Typescript对象可能未定义

我正在使用Typescript 2.3.4,Node.JS 8.0.0和Feathers框架(版本2.1.1).我正在制作一个使用服务的快速路线,当我在抓取羽毛应用上的单例实例后尝试使用该服务时,Typescript会抛出错误TS2532:对象可能是"未定义"错误,即使在显式类型保护之后.

routes.ts

import feathers = require('feathers');

export default function(this: feathers.Application) {
  const app = this;

  app.post(
    '/donuts',
    async (req, res) => {
      const someService = app.service<any>('predefined-service');

      if(typeof someService === "undefined" || !authService) {
        res.redirect('/fail');
        return;
      }

      try {
        let data = someService.create({test: 'hello'});
        console.log(data);
        res.redirect('/success');
      } catch(err) {
        res.redirect('/fail');
      }
    }
}
Run Code Online (Sandbox Code Playgroud)

我也尝试过写作,someService!.create...但这也不起作用.

感谢阅读,任何帮助赞赏<3 <3

javascript node.js typescript feathersjs

9
推荐指数
1
解决办法
6534
查看次数

亚搏体育app Docker SMTP

我正在使用gitlab/gitlab-ce:latestdocker映像在公司的Intranet中设置gitlab。

这样做docker-compose up -d就像一种魅力,我可以以root用户身份登录,因此我更改了密码,并让自己成为合适的用户……但从未收到确认电子邮件。

我一直在调整docker-compose.yml文件以尝试修复smtp设置(我认为是问题所在),这就是我得到的:

web:                                                                               
  image: gitlab/gitlab-ce:latest                                                 
  container_name: gitlab                                                         
  restart: always                                                                
  hostname: gitlab                                                               
  environment:                                                                   
    GITLAB_OMNIBUS_CONFIG: |                                                   
      external_url 'http://127.0.0.1:11141'                                  
      gitlab_rails['gitlab_shell_ssh_port'] = 11122                          
      gitlab_rails['smtp_enable'] = true                                     
      gitlab_rails['smtp_address'] = 'mail'                                  
      gitlab_rails['smtp_port'] = 25                                         
      gitlab_rails['smtp_user_name'] = 'noreply-gitlab'                      
      gitlab_rails['smtp_password'] = 'thepass'                           
      gitlab_rails['smtp_domain'] = 'ourhost.com'                         
      gitlab_rails['smtp_authentication'] = 'login'                          
      gitlab_rails['gitlab_email_from'] = 'noreply-gitlab@business.com'
      gitlab_rails['gitlab_email_reply_to'] = 'gitlab@business.com'    
  ports:                                                                         
    - '11141:11141'                                                            
    - '11122:22'                                                               
  volumes:                                                                       
    - '/srv/gitlab/config:/etc/gitlab'                                         
    - '/srv/gitlab/logs:/var/log/gitlab'                                       
    - '/srv/gitlab/data:/var/opt/gitlab'                                       
Run Code Online (Sandbox Code Playgroud)

如果没有别的,我真的很想知道如何获取日志。我知道电子邮件是作为sidekiq作业处理的,但是current我可以在日志卷中看到的sidekiq 日志与发送电子邮件没有任何关系:\


production.log我看到的是:

Started POST "/users/confirmation" for 172.17.0.1 at …
Run Code Online (Sandbox Code Playgroud)

smtp gitlab docker

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

将方法传递给LINQ查询

在我正在进行的项目中,我们有许多静态表达式,当我们在它们上面调用Invoke方法并将lambda表达式的参数传递给它时,我们必须在本地范围内带一个变量.

今天,我们声明了一个静态方法,其参数正是查询所期望的类型.所以,我的同事和我正在搞乱,看看我们是否可以在查询的Select语句中使用此方法来执行项目,而不是在整个对象上调用它,而不将其带入本地范围.

它奏效了!但我们不明白为什么.

想象一下像这样的代码

// old way
public static class ManyExpressions {
   public static Expression<Func<SomeDataType, bool> UsefulExpression {
      get {
         // TODO implement more believable lies and logic here
         return (sdt) => sdt.someCondition == true && false || true; 
      }
   }
}

public class ARealController : BaseController {

   /* many declarations of important things */

   public ARealClass( /* many ninjected in things */) {
      /* many assignments */
   }

   public JsonNet<ImportantDataResult> getSomeInfo(/* many useful parameter */) {

      var usefulExpression = …
Run Code Online (Sandbox Code Playgroud)

c# linq method-group

4
推荐指数
1
解决办法
4451
查看次数

标签 统计

c# ×1

docker ×1

feathersjs ×1

gitlab ×1

javascript ×1

linq ×1

method-group ×1

node.js ×1

smtp ×1

typescript ×1