编程语言
首页 > 编程语言> > javascript-角度:将参数发送到指令的正确方法

javascript-角度:将参数发送到指令的正确方法

作者:互联网

我对Angular有点陌生,我正试图掌握如何以“正确”的方式使用指令方面的Angular.

我的用例是我正在使用Angular& amp;开发3D项目查看器. ThreeJS.用户可以具有可供他查看的不同“项目”.

我们要使用项目标识的方法是通过url参数,这样一个人就可以将特定项目链接到其他人进行查看.

Viewer / Renderer定义为指令,因此我们可以按以下方式定义查看器

...
    <viewer></viewer>
...

据我了解,有几种不同的方法可以将url参数传递到查看器指令,并且我正在尝试利用$stateParams从url访问参数.但是,当我继续工作时,没有“清晰”的方法来访问$stateParams,但是必须将控制器连接到指令,然后从那里访问它.

这是执行此操作的预期方法吗?还是应该将其定义为查看器指令的属性?如果是这样,如何访问html代码中的url参数?还是有第三种更好的选择?

正如您可能理解的那样,我对angular还是很陌生的,我主要是想了解Angular的预期用法,以便在开始时不会花太多时间.

最好的问候,大卫.

解决方法:

您可以通过作用域访问url参数,因为您将传递一个字符串,因此@在这里更有意义:

scope: {
    datasource: '@'
}

在您的指令中,您可以像这样传递值:

<viewer datasource={{urlParamValue}}></viewer>

在您的控制器中,您可以像这样收集url参数:

function Controller($scope, $location){
    var urlParamValue = $location.search().urlParamValue;    
}

标签:url-parameters,angularjs,angularjs-directive,javascript
来源: https://codeday.me/bug/20191118/2024890.html