问题标签 [angularjs-1.6]
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.
javascript - 控制器内部的 Angular 1.6 绑定
我试图通过绑定将一些参数传递给我的组件,但不幸的是我没有运气在我的控制器中使用这些参数,这是我的代码:
HTML 组件:
有趣的是我可以访问模板中的参数,当我执行 2 个控制台日志时,第一个是未定义的,但在第二个中我可以看到 rid 变量......所以,我真的不明白我错过了什么。
angularjs - Angular 1.6 自定义验证指令与 $setValidity
我正在尝试编写一个自定义指令,该指令根据指令中也需要可用的其他值验证输入字段。我通过使用带有范围变量的隔离范围来做到这一点。更具体地说,我想将产品的客户价格(即净价格)与购买价格进行比较,如果差异为负(客户价格设置为 0 除外),我想让客户-price 输入(及其周边形式)无效。这是我的指令:
这就是我在被表单标签包围的 ng-form div 中使用它的方式:
它可以工作,但问题是验证部分似乎是“时间错误”,这意味着如果我输入一个导致“标记”第一次变为负数的值,则设置表单的 $invalid 值为假。但是当下一个输入为负时,验证将启动并起作用。我认为我的问题是我在不同步骤之间进行了大量计算,但我很难知道是什么导致验证如此偏离。我想我希望对 Angular JS 机制有更深入了解的人来看看我是否在做明显错误的事情。如果我的描述有点含糊,请提前致谢。
编辑:以为我还会包括在 ng-change 上触发的方法:
验证服务 getter 基本上返回 form.$valid 并且对于我的所有其他自定义验证器都可以正常工作。
编辑 2:添加了屏幕截图,显示周围的 ng-form 标记似乎至少将其 $invalid 属性设置为 true:
编辑 3: 这是转译的 JS:
...这是我的 html 的精简版:
我在指令中的手表内设置了断点,由于某种奇怪的原因,当我第一次在客户价格输入中输入新值时,手表似乎没有触发。相反,我发现自己直接在 changeDetected() 方法中。我现在真的很困惑。我认为这个问题与验证之前触发的 ng-change 指令有关。我可能有一个错误的逻辑,导致在指令有时间实际更改有效性之前触发我的验证服务的 isValid 检查。
angularjs - Angular Route - URL 中的额外 #
学习一些 Angular - 我被困在路由上
这是我的角度配置
这是我的链接
当我加载我的节点应用程序时,我被定向到
我让我的角度控制器在ng-view
标签中按预期工作
但是我无法使用上面的链接从一个控制器切换到另一个。
如果我选择红色标签,我的 URL 会添加一个额外的 # 成为
请注意,如果我手动更改为
我的控制器发生了变化,它可以工作,所以为什么我会得到额外的 #
谢谢你的帮助
javascript - 如何在 AngularJS 1.6 组件控制器中导入类?
如果我想在 AngularJS 1.6组件控制器中导入一个类,我必须使用什么语法?
例如,我有以下组件。
应用程序/电话列表.component.js
我在一个单独的文件中定义了一个类,player.js
.
播放器.js
我想像这样在里面使用这个类PhoneListController()
:
如果我把它放在控制器文件中,这个类就可以工作。
unexpected token import
如果我尝试通过以下方式导入它,我会收到:
angularjs - Angular (1.6.x) 路由到 chrome 以寻址位置
我正在尝试通过 ng-view 在部分视图中做一个简单的工作。它有四个锚链接,如瑞典、丹麦、挪威......如果我点击其中一个,它将在索引页面上显示部分页面。但是它不起作用。浏览器地址位置显示类似
localhost/Angular%20js%20practice/#!#%2Fdenmark
localhost/Angular%20js%20practice/#!#%2Fnorway
但它应该像 --- localhost/Angular%20js%20practice/#/denmark
--- 它会显示丹麦的部分页面视图。所以我该怎么做?
angularjs - 不要缓存或读取缓存 | AngularJS 1.6 | 引导程序 3.3
我有一个模态引导程序,内部调用是$http
用 Angular 进行的。但只有在加载页面到服务器并检索数据时,问题是:
每次打开引导模式时是否可以调用“http”?
javascript - 通过 SoundCloud 认证失败,登录回调正在尝试访问跨域框架
SoundCloud SDK v3.1.2
我大约 1 年前注册了我的应用程序。
今天我发现我的 SoundCloud (SC) 登录停止工作。
当我单击按钮时,SC 弹出窗口出现消息“允许“domain.com”访问您的 SoundCloud 帐户? ”我单击connect
并收到带有消息的回调弹出窗口“此弹出窗口应在几秒钟内自动关闭”。回调弹出窗口永远不会关闭。在开发控制台(用于回调弹出窗口)中,我看到以下错误:
铬 55.0.2883.87 m(64 位)
VM2980 callback.html?code=3717208…&state=SoundCloud_Dialog_508d9:7 Uncaught DOMException: Blocked a frame with origin "http://domain.com" from accessing a cross-origin frame.
at onload (http://domain.com/callback.html?code=3717208cc602aba6cc0195157ecd2b6b&state…8d9#access_token=1-166020-17988851-e8f6b064d7ccd4&scope=non-expiring:7:105)
onload @ VM2980 callback.html?code=3717208…&state=SoundCloud_Dialog_508d9:7
火狐 50.1.0
Error: Permission denied to access property "SC" callback.html:1:1
了解更多
我的回调.html:
由我页面上的按钮触发的 JavaScript 函数(在 AngularJS 1.6 组件控制器中):
我试图调试它放置一些断点。在这里,我没有执行 SC 承诺,它仅在debugger;
我单击按钮后的第一次中断。
为什么会这样以及如何解决?
angularjs - AngularJS:如何从 URL 中删除 #!/(爆炸前缀)?
我已经完成了$locationProvider.html5Mode(true);
,但它不起作用。每当我访问http://example.com
它时,它都会转到http://example.com/#!/
. 代码在这里给出:
我也添加了更新$locationProvider.hashPrefix('');
,但没有区别。另外让我告诉你,我在地址栏中输入地址并按回车。我做得对吗?浏览器如何发现它不需要从服务器刷新?
更新#2
理想情况下,我希望 URL ashttp://example.com
和http://example.com/#!/list-role
to http://example.com/list-role
。现在http://example.com/list-role
给 404
更新#3
如果有帮助,我正在使用 nginx 代理。
更新#4
已擦除缓存。现在我可以看到http://example.com
而不是http://example.com/#!
但仍然http://example.com/list-role
给出 404
javascript - AngularJS 1.6.1 表单和 ngInclude
Angular 1.6.1 在我的项目中破坏了 ngInclude。我使用 ui-bootstrap 0.14 作为选项卡。
我的模板是一个看起来像这样的表单:
我的前端仍在运行,但在控制台中,我在一秒钟内收到这 2 条消息 100 次:
未捕获的错误:[$rootScope : infdig] http://errors.angularjs.org/1.6.1/$rootScope/infdig?p0=10&p1=%5B%5D
错误:[ng:cpws] http://errors.angularjs.org/1.6.1/ng/cpws
javascript - 角度 1.6 无法在模板中显示范围值
我有 index.html
以前的
我在 registerController 中为 $scope.errorMsg 分配了一些值,因此更改为
在控制器中,当我执行 console.log 它打印值但它没有显示在 error.html 页面上。
我是 Angular 的新手,如果我需要为我的问题添加更多信息,请告诉我