javascript - 无法分配 'import class',因为它是一个导入 - Javascript

标签 javascript typescript

我一直在初始化一些常量类

    export class A {
       foo: string,
       b: B
    }

    export class B { 
       bar: number
    }

然后将它们导入另一个类并在另一个文件中初始化它们。但是,如果我想初始化 A 类时使用 B 类时遇到问题。

例子:

    import { A, B } from '../models/class';
    export const myVariable: A = {
       foo: 'FOO',
       b: B = {
          bar: 5
       }
    }

第一个分配是正确的。但是,A 中的 B 类会给我错误 - Cannot assign to 'B' because it is an import.

最佳答案

这不是为对象字面量中的属性赋值的方式:

{
  foo: 'FOO',
  b: B = {
    bar: 5
  }
}

基本上,您尝试将对象分配给 B itself 而不是对象上的 b 属性,然后尝试将该赋值的 result 赋值给 b 属性。这真的没有意义。

您可能对 : 字符的用法感到困惑。在 TypeScript 中声明变量时,它用于指示类型。在 JavaScript(因此也包括 TypeScript)中定义 object literal 时,它用于定义对象属性的值。

这是定义对象字面量的方式:

{
  foo: 'FOO',
  b: {
    bar: 5
  }
}

关于javascript - 无法分配 'import class',因为它是一个导入 - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69454926/

相关文章:

javascript - typescript : 'jasmine' 方法无法正确识别

reactjs - 将自定义 Prop 传递给 typescript 中的样式组件

javascript - jquery 错误 n 无效的选择器

javascript - CSRF 漏洞/cookie 问题

javascript - 无法获取复选框的正确状态

javascript - 类型区域范围的 Highcharts 不显示圆圈等标记

javascript - 查看 Chrome 控制台是否打开

带有参数的Angular 5 Component输入函数

javascript - 为什么 ngStyle 不起作用

typescript - 使用 AWS CDK 将现有角色附加到 AWS Lambda