具有必需选项的Angular.JS外部Javascript库

时间:2017-07-21 17:49:19

标签: javascript angularjs

我有一个简单的问题;我还在学习Angular.JS,所以我还不是这方面的专家,很明显大声笑。我们假设我们有一个类似以下的脚本:

<script type="text/javascript" src="https://PATH/TO/Service.js">
{
   requiredParam1: SOMETHING,  
   requiredParam2: SOMETHING_ELSE 
}
</script>

现在,这个特殊的脚本需要在包含脚本时指定BOTH参数;如果不这样做会导致Service.JS文件返回错误。

如何在Angular页面上正确包含它? (视图)。

我知道可以使用控制器和指令,而且我不能理解那些所需的概念;我已经可以使用这种方法包含外部javascripts了,但是在包含的内容中使用必需的参数这样做是为了逃避我。

这是一个有些需要的功能性例子。注意,我们没有做TradingView的东西,但是这个特定的小部件的功能与我们的数据提供者小部件相同。如果这是一个标准HTML页面,我们只需将其包含在我们想要放置的正确<div>元素中。但是,由于这是有角度的,不确定如何将其实际放入视图中。

<!-- TradingView Widget BEGIN -->
<span id="tradingview-copyright"><a ref="nofollow noopener" target="_blank" href="http://www.tradingview.com" style="color: rgb(173, 174, 176); font-family: &quot;Trebuchet MS&quot;,Tahoma,Arial,sans-serif; font-size: 13px;">Economic Calendar by <span style="color: #3BB3E4">TradingView</span></a></span>
<script type="text/javascript" src="https://s3.tradingview.com/external-embedding/embed-widget-events.js">
{
 "width": "510",
 "height": "600"
}
</script>
<!-- TradingView Widget END -->

1 个答案:

答案 0 :(得分:0)

首先,如果您有提供者脚本源URL,则不要在脚本文件中写入脚本文件中的任何代码。

制作这样的服务文件,并将文件路径添加到索引文件中: -

var app = angular.module('appName')
app.service('servicename',function() {
    this.get = function(argument1, argument2) {
        //perform function;
    };
});

制作一个这样的控制器文件,并将文件路径添加到索引文件中: -

var app = angular.module('appName').controller('controllername',['$scope', 'servicename',  function($scope, servicename) {
    servicename.get(arguement1, arguement2);
}]);

看看它是否可以帮到你