Angular 1.2取代always了finally承诺.
那么曾经是这样的:
$http.get('/myurl').always(handler);
Run Code Online (Sandbox Code Playgroud)
现在需要这样:
$http.get('/myurl').finally(handler);
Run Code Online (Sandbox Code Playgroud)
但我在IE8中收到错误"预期标识符".如何在IE8中完成这项工作?
我想通过将现有代码转换为ES6(如本视频中所推荐的)开始准备Angular 2 .
但是,我立刻感到难过,或者可能不确定如何继续.在视频中,它们显示了服务的转换.在我的代码中,我正在尝试转换工厂,这在尝试转换为ES6时类似但实际上完全不同.该服务很容易遵循类实例化方法,但工厂需要返回注入的对象.
我的代码开头是这样的:
melange.factory('SomeService', ['$resource', function ($resource) {
var someResource = $resource('/api/endpoint');
someResource.customQuery = function() {
// ... do some custom stuff
};
return someResource;
}]);
Run Code Online (Sandbox Code Playgroud)
我的第一次失败尝试 - 所以我立即开始转换到ES6并想出了这个:
// notice I changed this to service instead of factory
melange.service('SomeService', ['$resource', SomeService]);
class SomeService {
constructor ($resource) {
var someResource = $resource('/api/endpoint');
someResource.customQuery = function() {
// ... do some custom stuff
};
return someResource;
}
}
Run Code Online (Sandbox Code Playgroud)
但那不对......构造函数正在返回一个资源.
也许成功尝试 - 所以它真的是资源(或者真的是一个Route对象),这就是我想要'class-ify'的东西.但由于Resource对象已经有一个特定的接口接口,我需要我的类扩展基础Resource对象.但这是通过调用$ resource工厂函数动态生成的.所以我想出了这个可能正确的代码:
melange.service('SomeService', ['$resource', …Run Code Online (Sandbox Code Playgroud) 我有一个BorderContainer,里面有几个对象.我希望它能够紧贴自己的内容,但事实并非如此.看起来BorderContainer的默认大小是112x112.考虑到没有其他容器具有默认大小,这是如此奇怪.有没有办法将宽度和高度属性设置为"自动"或类似的东西?
注意:我不会升级ng1应用。我正在尝试让ng1和ng2应用程序并排(或更确切地说嵌套)。
我们大致使用以下html来显示如何尝试在页面上一次使用两个框架:
<html ng-app="app">
<head></head>
<body ng-controller="appController">
<header>Angular 1 Stuff</header>
<div ng-non-bindable>
<ng2-app></ng2-app>
<script src="bundle.js"/>
<!-- bundle.js is the output from webpack and should bootstrap <ng2-app> -->
</div>
<footer>Angular 1 Stuff</footer>
</body>
</html>Run Code Online (Sandbox Code Playgroud)
当我们单独运行它而不尝试集成到此ng1应用程序页面时,我们的应用程序运行良好。
但是,当我们在集成后运行它时,我们会收到一条错误消息,指出与全局require方法存在冲突。
requirejswebpack(使用typescript-loader)requirejs和webpack都使用,require但是在不同的上下文中。
我该如何解决冲突?
如果您好奇为什么要这样做:我们正在尝试在还具有Angular 1应用程序的页面上引导新应用程序。我们公司将全局页眉/页脚和每个页面的内容作为单独的已部署应用程序。这使团队可以将页面作为独立项目进行处理。一个团队希望在我们的新页面之一上尝试将Angular 2用于其新应用程序。
angularjs ×3
angular ×1
containers ×1
ecmascript-6 ×1
flex4 ×1
height ×1
integration ×1
q ×1
size ×1
width ×1