【问题标题】:how to set value to angularjs constant file from angularjs controller如何从 angularjs 控制器为 angularjs 常量文件设置值
【发布时间】:2016-09-28 13:04:48
【问题描述】:

您好,我有一个模块,其中定义了常量。我想在控制器的某些条件下修改这个常数值,以便这个改变的常数值可以在其他地方使用。这是我的常量文件的示例

angular.module('myapp').constant("Constantobject", {

    TOOL: "Jump",
    NAME: "cat",

})

如何更改从控制器跳转的值。

【问题讨论】:

  • 常量的目的是不改变应用生命周期的值。
  • 是的。但是我正在开发的应用程序已经由我的同事开发,所以一半的应用程序是使用这个常量开发的。无论如何我可以第一次进行更改,以便在常量文件上设置值。

标签: javascript jquery angularjs


【解决方案1】:

如果您想更改值,则不应使用 Constant,即使它允许您更改值。

只需将您的Constant 替换为Factory,它将以相同的方式工作

常数

angular.module('myapp').constant("Constantobject", {
  TOOL: "Jump",
  NAME: "cat",
})

工厂(您甚至可以保留名称,但不建议这样做)

angular.module('myapp').factory("Constantobject", function(){
  return {
    TOOL: "Jump",
    NAME: "cat"
  }
})

在控制器上,您可以通过执行操作来更新值
Constantobject.TOOL = 'some value'

即使您保留Constant,您也可以以同样的方式更新它。

【讨论】:

  • 感谢您的 cmets。因为它就像我们在想要更改值时不应该使用常量一样。我现在已经完全改变了这个概念。
【解决方案2】:

因为我们不应该使用常量并在以后更改值。我采用了不同的方法来解决我的问题,声明了几个全局变量。感谢您的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-09-11
    • 1970-01-01
    • 2016-11-02
    • 1970-01-01
    相关资源
    最近更新 更多