业务背景
- 强行学习
typesciprt
- 在私活
vue
nuxt
里面边学边用 - 以前没写过
ts
- 接触过
c#
遇到的困难
-
tslint
老是报错 - 但实际并不影响代码运行
示例代码
export default {
data: () => ({
name: {
value: '',
error: '',
}, // 用户名
...
methods: {
// 验证用户名
submit() {
if (!reg.isUserName(this.name.value)) {
this.name.error = '用户名输入有误';
return;
报错内容
我的问题
- 为什么会报这个错?(应该跟this作用域有关,但在tslint下怎么判断的?)
- 怎么写不让它报错?
排除的方法
- 禁用这条tslint规则很明显不优雅
- 网上有提到一个方法使用
[]
提取属性,是可以,但是写起来太麻烦了.并且不适用于vuex
建议你可以看一下TS官方文档,TypeScript的核心原则之一是对值所具有的结构进行类型检查,这里你应该是没有定义类型~