我有一些特定于视图的脚本.但是,当angularjs加载视图时,脚本似乎不会执行.
的index.html
<html>
<body ng-app="adminApp">
<div ng-view=""></div>
<script src="bower_components/angular/angular.js"></script>
<script src="scripts/app.js"></script>
<script src="scripts/controllers/main.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
Main.html - 在ng-view下加载
hello world
<script>
alert('Hello, John!')
</script>
Run Code Online (Sandbox Code Playgroud)
在这个例子中,当页面加载时,我看到网站上印有一个基本的hello世界.但是,我没有得到任何弹出说"你好,约翰".
知道为什么我无法加载特定视图的脚本吗?
额外信息 app.js
'use strict';
angular.module('adminApp', [])
.config(function ($routeProvider) {
$routeProvider
.when('/', {
templateUrl: 'views/main.html',
controller: 'MainCtrl'
})
.otherwise({
redirectTo: '/'
});
});
Run Code Online (Sandbox Code Playgroud)
控制器/ main.js
'use strict';
angular.module('adminApp')
.controller('MainCtrl', function ($scope) {
$scope.awesomeThings = [
'HTML5 Boilerplate',
'AngularJS',
'Karma'
];
});
Run Code Online (Sandbox Code Playgroud) 我正在用角度发生器构建一个自耕农应用程序.
我的index.html文件中包含的js库是:
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/modernizr/modernizr.js"></script>
<script src="bower_components/angular/angular.js"></script>
<script src="bower_components/angular-ui-router/release/angular-ui-router.js"></script>
<script src="bower_components/d3/d3.js"></script>
<script src="bower_components/select2/select2.js"></script>
<script src="bower_components/angular-ui-select2/src/select2.js"></script>
Run Code Online (Sandbox Code Playgroud)
只有在角度之前包含jquery时才会出现问题,如果它在它之后就不会发生.
标题所述的问题是我在控制台中得到"警告:尝试多次加载角度"并且应用程序无法初始化.
有没有人有任何线索为什么会发生这种情况?
我有一个ng-app,我只包括一次角度......以及一切.它看起来不像是与配置相关的东西,因为更改脚本的位置会修复它.
你们有什么线索吗?
有谁知道我是否能够配置包含脚本的顺序?当我使用角度生成器时,我已经使用usemin来设置它以包含bower脚本.我想知道是否有任何方法可以指定包含脚本的顺序.
这是我项目的bower.json文件:
{
"name": "<name>",
"version": "0.0.0",
"dependencies": {
"angular": "1.2.15",
"json3": "~3.2.6",
"es5-shim": "~2.1.0",
"angular-ui-router": "~0.2.10",
"modernizr": "~2.8.1",
"d3": "~3.4.6",
"angular-ui-select2": "~0.0.5"
},
"devDependencies": {
"angular-mocks": "1.2.15",
"angular-scenario": "1.2.15"
}
}
Run Code Online (Sandbox Code Playgroud)
我试图在谷歌搜索没有运气.提前致谢!
更新1:
我刚刚发现,如果我以这种方式包含脚本,则角度将不会包含两次,并且始终首先加载.
<!-- build:js scripts/vendor.js -->
<script src="bower_components/angular/angular.js"></script>
<!-- bower:js -->
<script src="bower_components/jquery/dist/jquery.js"></script>
<script src="bower_components/modernizr/modernizr.js"></script>
<script src="bower_components/angular-ui-router/release/angular-ui-router.js"></script>
<script src="bower_components/d3/d3.js"></script>
<script …Run Code Online (Sandbox Code Playgroud)