简体   繁体   English

AngularJS:将数据从ng-init传递给<script>

[英]AngularJS: Pass data from from ng-init to <script>

This is how code looks: 这是代码的样子:

<div ng-init="companyData">
  <script type="text/javascript">
    window.timeline = new TL.Timeline('timeline-embed', sampleJson);
  </script>
</div>

Is there a way to pass companyData in ng-init to the timeline ? 有没有办法将ng-init中的companyData传递给timeline I want something like this: 我想要这样的东西:

<div ng-init="companyData">
  <script type="text/javascript">
    window.timeline = new TL.Timeline('timeline-embed', {{companyData}});
  </script>
</div>

Try to init new TL.Timeline() inside your controller logic. 尝试在控制器逻辑中初始化new TL.Timeline() I try to avoid using ng-init because it always ends in to much logic on the "view"-side of your application. 我尽量避免使用ng-init因为它始终以应用程序“视图”旁边的逻辑结尾。 Handle that kind of stuff in your controller would be much more tidy. 处理控制器中的那种东西会更加整洁。

view 视图

<div ng-controller="MyCtrl"></div>

AngularJS App AngularJS App

var myApp = angular.module('myApp',[]);

myApp.controller('MyCtrl', function ($scope) {
    $scope.companyData = 'someData';
    window.timeline = new TL.Timeline('timeline-embed', $scope.companyData);
});

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM