问题标签 [angularjs-model]
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.
angularjs - Angular View 未从模型更改中更新
我有 2 个使用相同控制器的模态。一个有:
另一个有:
在我的控制器中,我有:
所以有人会期望我的第一个视图会在下拉列表中有更新的“播放列表”,但事实并非如此。那么如何才能更新该视图呢?
angularjs - angularjs选择元素绑定
我已将newParty.party_type.code
模型绑定到下拉列表。在从控制器更改其值时,? number:2138 ?
即使具有值2138
的选项已包含在选择元素中,它也会添加另一个具有值的选项。
我还尝试newParty.party_type.code
在控制器中转换为字符串。但它仍然增加了具有价值的新选择? string:2138 ?
如果我手动选择任何选项,模型将获得正确的值。但是通过控制器,它不起作用。为什么会这样?角度数据绑定如何工作?在处理模型属性时我需要知道类型吗?
EDIT1:选择标签中的选项在页面加载后动态加载。(在 ng app init 之后)我尝试放置一些静态数据,它工作正常。它与角度无法处理角度控制器之外的动态加载数据有关。
angularjs - AngularJS在值更改时删除元素
在我的控制器中,我有一个变量:
在我的页面中,我将输入字段映射到变量:
“checknumberrange”类是解析输入值以在输入字段和模型中设置数值的指令。在处理此指令时,变量 $scope.myVar 中的一些元素将从变量中删除。
在指令的情况下,我发现当没有提供返回值时,值被删除了,但你会认为它会将那个键的值设置为 null,而不是完全从变量中删除配对。这发生在我项目的其他部分,当您在输入字段中写入时,该值会返回(可能会再次被删除),但我不明白为什么会发生这种情况。使用 Angular 1.2.0 rc3,以下 html:
不允许我更改值。更改值将立即从变量中删除配对,如果您将焦点放在输入字段上,然后在其他地方,第一次,该字段将从“0”更新为“0.00”,第二次将导致配对被删除。
我真的很想了解为什么要删除配对,这样我就可以防止这种情况在我的工作中发生。
angularjs - 来自 angular-payments 的 ng-model 不起作用
我正在尝试添加角度支付,以便将 stripe.com 支付处理集成到我的 AngularJS 网络应用程序中。
我将https://github.com/laurihy/angular-payments/blob/master/lib/angular-payments.js中的代码复制到我的 angular-payments.js 文件和https://github.com/中的代码laurihy/angular-payments/blob/master/example/index.html进入 localhost:8888/stripe.html 并让它工作。
但是,当我尝试将此代码集成到我的 AngularJS Web 应用程序时,ng-model 不起作用。
这是我集成代码的方式。我有一个带有 app.js 的单页 Web 应用程序,它具有以下代码:
因此,我将“angularPayments”添加到:
我还有一个 app.route.js 文件,其中包含以下代码:
我在 app.route.js 中添加了以下内容:
我将 localhost:8888/stripe.html 中的代码复制到 app/buy.html 中,它映射到 localhost:8888/#/user/buy
例外是我从 buy.html 中取出以下几行并将它们放入 index.html:
我的 index.html 有这个代码:
stripe.html 和 buy.html 都有以下代码:
但是,以下代码在 stripe.html 中有效,但在 buy.html 中无效,因为 ng-model 没有返回值:
因此,当我提交此表单时,Stripe 返回一个 status = 402 的错误,因为没有任何东西传递给 Stripe。
我尝试将 ng-model 更改为 data-ng-model,但无济于事。我尝试将以下代码放入单独的文件中:scripts/controllers/payment.js:
并将以下内容添加到 app.route.js 中:
并在 buy.html 中更改以下内容:
到:
但仍然无济于事。
谁能告诉我如何让 ng-model 变量在 buy.html 中工作?提前致谢。
angularjs - ng-repeat 和静态输入代码之间的行为有什么区别?
ng-repeat
html和这段代码产生的行为有什么区别:
这个输入的代码:
我试图让第一个ng-repeat
代码与第二个键入的代码具有相同的行为,但由于某种原因,第一个代码的滑块会粘住并且不会平滑滑动。然而,第二个代码的滑块滑动顺畅。我没有考虑的差异是什么?任何建议,将不胜感激。
items
是:
angularjs - angularJS element.on 回调和 scope.$apply
In this example, I have an input with an attached directive. The directive is meant to display messages next to the input. There's another input and a button to add messages. Once some messages are displayed, focusing on the input with the attached directive should clear the messages. http://jsfiddle.net/viro/WBqxf/
So I have a directive with an isolated model, and I'm trying to update the model when the element which has the directive goes into focus. It seems like I have to wrap event callbacks in scope.$apply if I want to update the model:
I suppose I have to wrap it in $apply because I'm using jqlite event callbacks and I guess they run "outside" angularJS, but I didn't find it clearly stated in the docs.
Am I doing it right or is it a hack ?
Is there a better way to do it ?
javascript - 模板中的 AngularJS ng-model 传递给指令控制器
我有一个带有控制器的指令,它构建了一个表单,用于通过 CommentsService 向 API 发布评论
我的指令看起来有点像这样:
这是我的comments.html 指令
这就是我将它放在我的主视图中的方式:
我的评论正在加载,并且事件 ID 正在通过,但是当我尝试发表评论时,它comment_text
是空白的。
我想我的范围混淆了或其他什么,我对指令仍然不完全清楚
** 更新 **
我刚刚意识到如果我设置
在指令中,当模板在文本区域内呈现时出现,并且if
postComments() 函数中的语句触发。但是如果我更改了textarea中的文本,然后点击发布按钮,内容$scope.comment_text
仍然是“初始文本”,这似乎是一种单向绑定。
javascript - 使用 {{expression}} 动态创建 ng-model 不起作用?
我正在做一个有角度的项目,我需要根据一系列问题创建一个表单。我想ng-model
为数组中的每个问题创建。
所以我想出了类似下面的东西,但它不起作用。
有人可以帮我解决这个问题吗?
提前致谢。
javascript - 为什么 ngModel.$render 没有被调用?
编辑 1:修复了一个错误,但仍然无法正常工作。
本来应该:
编辑2:问题似乎是由于隔离范围。当作用域是隔离时,注入ngModel
的方法不会被调用。$render()
如果我将范围设为非隔离并设置ng-model="selectedDate"
,$render()
则按预期调用。
编辑 3:实际上问题是由于$parent.selectedDate
. 如果我将其更改为selectedDate
,代码似乎工作正常。但是我想确保它selectedDate
没有在指令的范围内定义,而是从其父范围继承。这就是我想使用的原因$parent.
,但它没有按预期工作。
我正在编写一个自定义日期选择器,当浏览器支持 HTML5 日期输入时,使用它,否则使用 jQuery UI 的日期选择器。它仍在进行中,现在只有使用本机 HTML 5 日期输入的部分正在实施。
该指令可以这样使用:
但是,当$scope.selectedDate
具有初始值时,指令不会呈现它。指令也没有观察到对 selectedDate` 的外部更改(例如,通过单击按钮)。
任何想法我的代码可能有什么问题?
这是代码的实时版本:milDatePicker。
这是指令的代码:
javascript - 前端 JS 上下文中模型的定义
我通常从事后端开发,其中模型被定义为某些数据库查询操作或内部预初始化数据字段的内存表示。它由控制器或服务方法处理并传递给用户的视图。
我也非常熟悉 jQuery,但一直在为回调地狱和管理事件绑定而苦苦挣扎。这导致了一些主要的代码膨胀和其他问题。
我正在寻找将 Backbone 用于解决 jQuery 问题的项目。但是,在前端 Web 开发环境中,模型到底是什么?