相关疑难解决方法(0)

在TypeScript中导入json文件

我有一个JSON如下所示的文件:

{

  "primaryBright":    "#2DC6FB",
  "primaryMain":      "#05B4F0",
  "primaryDarker":    "#04A1D7",
  "primaryDarkest":   "#048FBE",

  "secondaryBright":  "#4CD2C0",
  "secondaryMain":    "#00BFA5",
  "secondaryDarker":  "#009884",
  "secondaryDarkest": "#007F6E",

  "tertiaryMain":     "#FA555A",
  "tertiaryDarker":   "#F93C42",
  "tertiaryDarkest":  "#F9232A",

  "darkGrey":         "#333333",
  "lightGrey":        "#777777"
}
Run Code Online (Sandbox Code Playgroud)

我正在尝试将其导入到.tsx文件中.为此,我将其添加到类型定义中:

declare module "*.json" {
  const value: any;
  export default value;
}
Run Code Online (Sandbox Code Playgroud)

而我正在这样导入它.

import colors = require('../colors.json')

该文件中,我使用的颜色primaryMain作为colors.primaryMain.但是我得到一个错误 - JSON

我究竟做错了什么?

json typescript angular angular8

91
推荐指数
11
解决办法
9万
查看次数

Angular/Typescript - 通配符模块声明

我正在尝试实现通配符模块,我似乎没有得到它的工作:

现在我有以下代码可行:

typings.d.ts

declare module "*.json" {
  const value: any;
  export default value;
}
Run Code Online (Sandbox Code Playgroud)

app.component.ts

import { Component, OnInit } from '@angular/core';
import * as es from './i18n/es.json';

@Component({
  selector: 'my-app',
  templateUrl: './app.component.html',
  styleUrls: [ './app.component.css' ]
})
export class AppComponent implements OnInit {
  hello = '-';

  ngOnInit() {
    this.hello = es.default.hello;
  }
}
Run Code Online (Sandbox Code Playgroud)

您可能会看到一个活生生的例子在这里,但是我想实现通配符,因为看到这里(typescriptlang)和这里(SitePen接触): 在此输入图像描述

实现应该允许我做这样的事情:

typings.d.ts

declare module "*.json!i18n" {
  const value: any;
  export default value;
}

declare module "*.json!static" { …
Run Code Online (Sandbox Code Playgroud)

typescript angular-module angular angular6 angular7

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