将常量导入Vue组件

时间:2018-08-16 11:51:19

标签: typescript vue.js

我正在用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;

在基于类的组件中,但是遇到了同样的错误。我如何使这个常数保持反应性?我什至会以这种正确的方式进行操作-我是否应该以其他方式分解像这样的常量?

1 个答案:

答案 0 :(得分:1)

您说您尝试过_validationError = validationError,这意味着您必须在模板中使用它,例如:<p>{{ _validationError.age }}</p>

我将省略下划线,只需要进行以下操作:

public validationError = validationError;