Ajax 如何从ng路由加载混合在html中的js?
我使用ngRoute加载htmlAjax 如何从ng路由加载混合在html中的js?,ajax,angularjs,angular-routing,Ajax,Angularjs,Angular Routing,我使用ngRoute加载html var app = angular.module('app', ['ngRoute']); app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { $routeProvider .when('/route1', { templateUrl: '/view1', controller: 'controll
var app = angular.module('app', ['ngRoute']);
app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) {
$routeProvider
.when('/route1', {
templateUrl: '/view1',
controller: 'controller1'
})
.when('/route2', {
templateUrl: '/view2',
controller: 'controller2'
})
}]);
当我切换到route1
时,我得到如下html:
<div>
bla bla bla ...
</div>
<script src="js1.js"></script>
app.controller('controller1', function(/*parameters you need*/){
/*your controller code*/
$.getScript("js1.js", function(){});
});
呜呜呜呜。。。
那么在成功获取html后如何加载
js1.js
?我知道这是一个老问题,但我也遇到了同样的问题,在谷歌上搜索,我已经解决了。
您可以(与jQuery一起)使用它:$.getScript(“js1.js”,function(){})代码>在控制器1中,如下所示:
<div>
bla bla bla ...
</div>
<script src="js1.js"></script>
app.controller('controller1', function(/*parameters you need*/){
/*your controller code*/
$.getScript("js1.js", function(){});
});
您可以在此处查看关于$的其他信息。getScript
:
在你的模板中1不要放js。你能解释清楚吗。可能重复:对不起,我的描述错了。我已经编辑了我的问题。如果问题仍然是用ajax动态加载javascript,那么这就是你看到的同一个问题,看看链接?也许这更简单:呃……我不知道把代码放在哪里运行eval
,因为ng-route
封装了ajax工作。