【问题标题】:how to create a constant file in the ionic 3?如何在 ionic 3 中创建常量文件?
【发布时间】:2019-06-22 05:46:47
【问题描述】:

设置要在整个应用程序中使用的全局常量(如 API URL 字符串)的最佳/推荐方法是什么?

我有 JSON 格式,想设置一个全局常量并在整个应用程序中用作静态常量。 import { Injectable } from '@angular/core';

@Injectable() export class Service { item_data = [ { item_id:'1', item_image: "assets/img/bluesaphire.jpg",item_title:'Blue Saphire Stone' } ];

【问题讨论】:

    标签: javascript json angular typescript ionic-framework


    【解决方案1】:

    非常简单!只需按照这两个步骤 -

    1) 在具有所需属性的根目录(例如 src)中创建一个 Injectable 类(例如 AppConstants)

    2) 在你的组件类构造函数中导入它并在需要的地方使用

    所以,你的 app.constants.ts 会像 -

    import { Injectable } from '@angular/core';
    
    @Injectable({
        providedIn: 'root'
    })
    public class AppConstants {
        public item_data = [
            { item_id:'1', item_image: "assets/img/bluesaphire.jpg",  item_title:'Blue Saphire Stone' } 
        ];
    }
    

    并且,将其用作 -

    // here, config is a directory & app.constants is a ts file
    import { AppConstants } from '../../config/app.constants';    // update your way
    
    public class TestComponent {
        // dependency injection
        constructor(private constants: AppConstants) { }
    
        testMethod() {
            // using it here
            console.log(this.constants.item_data);
        }
    }
    

    【讨论】:

    • 你会详细说明在 (constant).ts 文件中要做什么以及如何在其他 .ts 文件中设置和获取这些数据..?
    • 因为我在配置文件中使用了AppConstants.ts,而在Item.ts -> import { AppConstants } from '../../config/appconstants/appconstants'; 错误来找不到模块..!
    • 再次更新了一个答案,确保您按照命名正确导入它
    • 为方便起见,如果您无法正确导入 AppConstants 类,只需先注入它而不导入,您的 IDE/编辑器应该建议导入然后以这种方式导入。它将正确导入。
    • 按你说的导入,我在崇高编码没有其他编辑器cannot resolve all the parameters ItemPage: ([object Object], [object Object], [object Object], ?).
    【解决方案2】:

    环境变量可以是处理这个问题的好方法。见例子:

    https://medium.com/prototype-berlin/a-simple-way-to-use-environment-variables-in-ionic-3-12641dc55b55

    【讨论】:

      猜你喜欢
      • 2017-12-15
      • 2011-03-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-05
      • 1970-01-01
      • 2016-12-26
      • 1970-01-01
      相关资源
      最近更新 更多