即使将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) 我的任务是将我们的 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) 我是角度新手。我目前正在使用 Meteor+Angular。
我有一个app.component.html看起来像这样的:
<div id="main">
<nav-user></nav-user>
<router-outlet></router-outlet>
<div>
Run Code Online (Sandbox Code Playgroud)
我想在同一应用程序中支持 和 的视图user(admin例如,在/admin和下/user)。<nav-admin></nav-admin>在链接下时,这需要一个单独的导航组件/admin。
有办法做到这一点吗?
我有一个奇怪的问题,我有一个对象 - 让我们称之为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中重新创建问题:
如何让这个看似简单的场景正常工作?
任何帮助表示赞赏.先感谢您.
这是我使用的代码:
axios.get(fileUrl, {headers:{'X-API-TOKEN':xxxxxx})
Run Code Online (Sandbox Code Playgroud)
收到的响应数据为二进制,我将其转换为base64并保存在文件中。保存后的zip文件。如果我尝试打开文件,则显示无效的zip错误。
我正在获取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/
任何吸烟者对我都非常有帮助.
angular ×2
javascript ×2
node.js ×2
axios ×1
joi ×1
knockout.js ×1
meteor ×1
nestjs ×1
passport.js ×1
typescript ×1
validation ×1
zip ×1