【问题标题】:Importing a constant to Vue component将常量导入 Vue 组件
【发布时间】:2018-08-16 11:51:19
【问题描述】:

我正在用 Vue 和 TypeScript 编写一个应用程序。我正在重构一些东西,现在我正在将一些我在模板中硬编码的字符串移动到一个单独的常量中。

我所做的是:

export const validationError: ValidationError = {
  lastname: 'lastname error',
  address: 'address error',
  age: 'age error',
};

interface ValidationError {
  lastname: string;
  address: string;
  age: string;
}

然后我将它导入到我的组件中:

import { validationError } ../validation/validationError';

并尝试像这样使用它:

<p>{{ validationError.age }}</p>

但我遇到了问题,即:Property or method "validationError" is not defined on the instance but referenced during render...

我已经尝试在我的组件中设置一个“数据”值,通过编写

_validationError = validationError;

在我的基于类的组件中,但我遇到了同样的错误。如何使这个恒定的反应?我是否以正确的方式来解决这个问题——我应该以不同的方式分解这些常量吗?

【问题讨论】:

  • 您在编写问题时是否在导入时出错,或者您是否也缺少代码中的fromimport { validationError } from ../validation/validationError';

标签: typescript vue.js


【解决方案1】:

您说您尝试过_validationError = validationError,这意味着您必须在模板中使用它,如下所示:&lt;p&gt;{{ _validationError.age }}&lt;/p&gt;

我会省略下划线,而直接使用以下内容:

public validationError = validationError;

【讨论】:

  • 谢谢,这行得通。我想我实际上用_validationError 修复了它,但我还有其他错误,所以我只是假设它不起作用。谢谢!顺便说一句,这是导出常量的方法吗?或者有没有更好的方法来保存像这样的“字典”?
猜你喜欢
  • 2021-07-28
  • 1970-01-01
  • 2017-05-18
  • 1970-01-01
  • 2018-01-16
  • 1970-01-01
  • 2021-09-08
  • 1970-01-01
  • 2019-04-23
相关资源
最近更新 更多