小编Nik*_*sen的帖子

Joi:“电话”不允许为空

即使将Joi tel设置为可选项,它也会返回以下错误。我们该如何解决?

谢谢。

错误:Joi失败:ValidationError:子级“ tel”失败,因为[“ tel”不允许为空]


//Define Joi schema
const schema = {
    email: Joi.string().required().email({
        errorLevel: 64,
        minDomainAtoms: 2 
    }).min(6),
    tel: Joi.string().optional().min(10).max(10),
    password: Joi.string().required().min(8).max(64)
}

//Check inputs
const { error, value } = Joi.validate({ 
    email: args.email, 
    tel: tel, 
    password: args.password 
}, schema)   
Run Code Online (Sandbox Code Playgroud)

javascript validation node.js joi

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

通过库共享时未注册 NestJS 自定义 PassportStrategy

我的任务是将我们的 NestJS 身份验证模块隔离到一个单独的共享库中,以便在多个 NestJS 项目之间重用它。每个项目都位于每个自己的存储库中,共享库作为 npm 包导入。我正在使用 NestJS 的护照模块进行身份验证(使用 jwt 令牌),并且基本上只是遵循了有关如何实现它的官方文档。

我遵循了其他 NestJS 社区包的模式,到目前为止,我已经移动了大部分身份验证代码并确保它可以编译和运行。

现在,我遇到了一个问题。应用程序不再识别自定义 jwt 护照策略,在我将它移到图书馆之后,我不知道为什么。我只是得到了例外:

未知的身份验证策略“jwt”

例子:

这是自定义通行证策略和 AuthModule (真实版本更复杂,但这是一个最小的可复制示例)。“父”项目和新库项目中的代码完全相同。

import { Injectable, Module } from '@nestjs/common';
import { PassportStrategy } from '@nestjs/passport';
import { Strategy } from 'passport-custom';

@Injectable()
export class CustomStrategy extends PassportStrategy(Strategy, 'custom') {
  async validate(request: Request): Promise<any> {
    console.log('Custom validation', request);

    return true;
  }
}

@Module({})
export class AuthModule {
  static forRoot() {
    return {
      module: AuthModule,
      providers: [CustomStrategy],
      exports: [CustomStrategy],
    };
  } …
Run Code Online (Sandbox Code Playgroud)

typescript passport.js nestjs nestjs-passport

5
推荐指数
2
解决办法
1229
查看次数

角度中的多个应用程序组件

我是角度新手。我目前正在使用 Meteor+Angular。

我有一个app.component.html看起来像这样的:

<div id="main">
  <nav-user></nav-user>
  <router-outlet></router-outlet>
<div>
Run Code Online (Sandbox Code Playgroud)

我想在同一应用程序中支持 和 的视图useradmin例如,在/admin和下/user)。<nav-admin></nav-admin>在链接下时,这需要一个单独的导航组件/admin

有办法做到这一点吗?

meteor angular-ui-router angular

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

Knockout.js中observableArray中对象中计算属性的奇怪行为

我有一个奇怪的问题,我有一个对象 - 让我们称之为Person - 它具有可观察的属性FirstName和Lastname,以及一个名为FullName的第三个计算属性.在我的ViewModel中,我有一个可观察的这些Person对象的数组.我还有一个将空Person推送到数组的函数.

这是奇怪的部分.

当我添加一个人,更改FirstName和LastName时,计算的FullName将成为名字和姓氏的串联 - 这是预期的行为.如果我然后添加另一个person对象,更改该对象FirstName或LastName属性然后返回以更改第一个人FirstName,两个Person对象的计算FullName现在是仅最后一个Person的first和lastname属性的串联.

这是代码:

function Person(data)
{
    self = this;
    self.FirstName = ko.observable(data !== undefined ? data.FirstName : "");
    self.LastName = ko.observable(data !== undefined ? data.LastName : "");
    self.FullName = ko.computed(function ()
    {
        return self.FirstName() + " " + self.LastName();
    });
};
function ViewModel() {
    var self = this;
    self.People = ko.observableArray([]);

    self.AddPerson = function()
    {
        self.People.push(new Person());        
    }
}

ko.applyBindings(new ViewModel());
Run Code Online (Sandbox Code Playgroud)

...并且可以使用以下步骤在此Fiddle中重新创建问题:

  1. 按添加
  2. 在两个输入中填写随机文本
  3. 观察按钮下方的连接输入
  4. 再次按添加
  5. 在两个新输入中的任意一个中填写随机文本
  6. 更改其中一个输入的值
  7. 观察到连接的输入现在完全相同.

如何让这个看似简单的场景正常工作?

任何帮助表示赞赏.先感谢您.

javascript knockout.js

3
推荐指数
1
解决办法
320
查看次数

无法使用axios下载zip文件

这是我使用的代码:

axios.get(fileUrl, {headers:{'X-API-TOKEN':xxxxxx})
Run Code Online (Sandbox Code Playgroud)

收到的响应数据为二进制,我将其转换为base64并保存在文件中。保存后的zip文件。如果我尝试打开文件,则显示无效的zip错误。

zip node.js axios

3
推荐指数
1
解决办法
4299
查看次数

如何在角度2中动态设置表格标题?

我正在获取JSON数据,我将JSON数据存储在我的属性上.

this.ResultData_search=data.json().extras.ResultData 

this.ResultData=[

  {
        "First_name": "xx",
        "Email": "xxxx",
        "Phone": "xxx",
        "countryCode": "+91",
        "order_datetime": "xxx",
        "status": 11,
        "DeviceType": 3,
        "orderId": "59081a04c9ff6852a49dd32a",
        "orderseqId": "E00002347",
        "orderType": 1,
        "CustomerID": "xx",
        "pickAddress": "xx",
        "dropAddress": "xx",
        "pickLatitude": 17.4369414,
        "dropLatitude": 17.43673,
        "dropLongitude": 78.36710900000003,
        "paymentType": 2,
        "itemDescription": "",
        "receiverName": "uday",
        "receiverPhone": "xx",
        "itemName": "sanjay",
        "deliverycharge": "199",
        "bookingType": 1
      }
      }]
Run Code Online (Sandbox Code Playgroud)

我想将所有键设置为表标题,将数据设置为表行.我参考了以下链接/sf/ask/2849950631/

链接2:动态地将列和数据加载到Angular 2中的表中

任何吸烟者对我都非常有帮助.

angular2-routing angular

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