问题标签 [readonly-attribute]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
1987 浏览

c# - C#中const的使用

我想将下面的 cert 变量设为 const?当我这样做时,我收到一个错误,“分配给 cert 的表达式必须是一个常量”。我在网上看到文章要求将其转换为静态只读而不是 const,并且还说要成为 const,应该在编译时知道该值。

我有两个问题

  1. cert 不可能是一个 const 变量,因为我不希望它被修改吗?
  2. 我尝试将 cert 变量设置为只读,这也给了我一个错误,“只读修饰符对此项目无效”。

程序.cs

我的工厂.cs

0 投票
1 回答
974 浏览

ruby-on-rails - 如何使用模型中的属性在 Rails 模型上设置只读?

如果同一模型中的属性设置为 true,如何在每次访问模型时将模型设置为只读?

我到处看了看,只读模型似乎只有很少的文档甚至网络结果。

编辑(附加信息):我的模型(application.rb)中有两种方法 - 不是私人的

我在更新时从我​​的应用程序控制器调用它们:

在模型(application.rb)中我有 - 不是私下的:

0 投票
1 回答
1591 浏览

typescript - 打字稿:在构造函数内的函数中分配只读属性

我有一个带有 readonly 属性的类,我在function内部定义constructor,编译器发出一个我不知道如何解决的错误:

编译器说:"Cannot assign to "desc" because it is a readonly property"但我认为在构造函数内部分配属性会避免这种错误。有可能还是我必须改变实施?

0 投票
2 回答
98 浏览

javascript - 如何防止 jquery 元素接受输入/更改但仍然在 POST 上发送数据(不使用隐藏元素)?

我有一个复选框$(#myinput),并且基于对其他选项的一些组合的选择,我希望这个复选框被强制为选中或强制为未选中。

但是,如果我使用$(#myinput).prop("disabled", true),那么复选框的值将不会在生成的 POST 请求中提交。由于它是一个复选框,readonly因此没有任何效果......也就是说,readonly不控制输入是否可以通过单击来切换状态更改以打开或关闭。

在不使用 hidden element的情况下,通过用户的点击使其$(#myinput)不可更改的最佳方法是什么,同时确保它被冻结的任何值仍然可以通过任何表单提交/POST 请求提交?

我正在寻找仅修改复选框本身的设置,而不是通过隐藏元素增加复杂性。请仅在避免创建隐藏元素时添加答案。

0 投票
4 回答
2565 浏览

javascript - 只读属性和 ngOnInit

只读属性只能在构造函数中赋值,但在 Angular 中,不鼓励并且有时不可能使用构造函数进行某些初始化,而是使用 Angular 钩子 ngOnInit。有没有办法将 ngOnInit 标记为关于 readonly 属性的构造函数,以便我可以将 readonly 用于仅在 ngOnInit 中分配一次的本质上不可变的属性?

编辑:澄清:我不是在寻找替代方法来声明只读属性。我想以常规方式声明它们。我认为其他任何事情都不值得为了获得静态检查而牺牲可读性。我希望会有一些注释,就像 tslint 忽略 ngOnInit 内部的不变性一样。

从到目前为止的答案来看,我想将它们分配为(this as any).foo = bar;最接近我想做的事情,尽管我想它仍然比仅仅省略只读更难看。

0 投票
1 回答
339 浏览

forms - 为什么表单 input[type="checkbox"] 被 Firefox 视为只读但不应该?

Firefox 将我的表单 input[type="checkbox"] 视为只读,但不应该因为该字段是可编辑的。它适用于所有其他浏览器,包括 chrome 甚至 IE11。

代码如下所示: HTML:

CSS:

Firefox 出于某种原因认为提供的 CSS 对输入有效: 在此处输入图像描述

Chrome 向我展示了以下内容: 在此处输入图像描述

火狐版本:65.0.2。

这可以用最简单的 HTML 重现:

0 投票
2 回答
182 浏览

python - 为什么 hasattr 在使用 @property 方法的类和实例上表现不同?

我在我的班级中实现了一个只写@property属性。奇怪的是,hasattr具有此属性的类和相应实例的行为不同。

从 的结果来看getattrgetattr(u1, 'password')尝试执行该方法并引发错误,而getattr(User, 'password')没有执行该@property方法。为什么他们的行为不同?

0 投票
1 回答
366 浏览

jquery - 隐藏特定 Jquery UI 微调器的微调器按钮

我有一个只读的 JQuery UI 微调器,我想禁用或隐藏旋转按钮。

我从上一个问题中看到,如果我想隐藏所有可以使用的微调器按钮:

它工作得很好。

但是如何只过滤一个特定的元素呢?

我努力了

并且

没有成功。

0 投票
2 回答
44 浏览

python - 将实例字段转换为属性

我想将对象的所有实例字段转换为属性(仅限 getter),以使它们只读。这些字段可能由子类定义。

我怎样才能做到这一点?

0 投票
1 回答
1221 浏览

c# - 'readonly' 修饰符是否会创建字段的隐藏副本?

MutableSlabImmutableSlab实现之间的唯一区别是readonly应用于handle字段的修饰符:

但它们会产生不同的结果:

GCHandle 是一个可变结构,当您复制它时,它的行为与immutableSlab.

修饰符是否会readonly创建字段的隐藏副本?这是否意味着它不仅仅是编译时检查?我在这里找不到有关此行为的任何信息。这种行为是否记录在案?