javascript - AngularJS 将属性中的 URL 传递给指令的隔离范围 - 意外标记 ':'

标签 javascript angularjs binding angularjs-directive angularjs-scope

我是 AngularJS 的新手,几天前才开始使用它,所以如果问题本身不正确,请原谅我。

我遇到的问题是我想通过属性将 URL 参数传递到我的指令的隔离范围,但是在 : 部分 http:// 它给我一个错误,说 Syntax Error: Token ':' is an unexpected token at column 5 of the expression [http://...

指令的 HTML 部分(我“调用”它的地方)是这样的:

<myDirective datasource="http://url"></myDirective>

然后我像这样将它绑定(bind)(?)到隔离范围:

scope: {
    dataSource: '=datasource'
}

如果属性的值只包含简单的字符,它就有效。我该如何解决这个问题?

谢谢。

最佳答案

在您的情况下,angular 正在尝试评估 datasource 属性的值。因为您提到 = 即变量的双向绑定(bind)。

如果您将 URL 包装在 '(单引号)内,将解决您的问题。因为提到的值将直接绑定(bind)到指令隔离范围变量。

标记

<my-directive datasource="'http://url'"></my-directive>

关于javascript - AngularJS 将属性中的 URL 传递给指令的隔离范围 - 意外标记 ':',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28386753/

相关文章:

javascript - 网络音频 - AudioParam 调度功能不起作用

javascript - 为什么 React 源代码是用 JavaScript 而不是 TypeScript 编写的,但仍然有类型?

javascript - AngularJS - 简单的部分不加载

javascript - MEAN.js 社交分享?

c++ - Boost.Python 自定义转换器

javascript - 使用 JS 仅显示请求的表单

javascript - angularjs:如何重定向到不同的网址?

angular - Angular 2 应用程序的下一个表达式中的问号是什么

c# - 如何使用 MVVM 从代码中使用 "text.changed"控件(在 Xamarin.Forms 中)

javascript - 停止 JavaScript 脚本执行