我最近更新到新的RC3和Router3alpha,似乎有些事情发生了变化.
我注意到单击活动路径的链接不再导致重新加载组件.如何使用新的router3实现此行为?
我的链接看起来像
<a [routerLink]="['/link1']">Link1</a>
Run Code Online (Sandbox Code Playgroud)
为了测试我只是在ngOnInit中使用了一个随机数:
export class LinkoneComponent implements OnInit
{
public foo: number;
constructor() {}
ngOnInit()
{
this.foo = Math.floor(Math.random() * 100) + 1;
}
}
Run Code Online (Sandbox Code Playgroud)
在路由之间切换时它可以正常工作,但是单击当前活动的路由不会导致组件的重新加载.
我正在尝试使用基本的Textfields在这里构建一个简单的登录屏幕,但我无法让键盘出现在模拟器中.
通过物理键盘输入工作正常,但在iOS模拟器中没有键盘可见.我是否必须明确地打开它或什么?
感觉就像我在这里遗漏了一些非常基本的东西.
buildLoginScreen() {
return new Container(
padding: EdgeInsets.only(left: 50.0, right: 50.0),
child: new Column(
children: <Widget>[
new TextField(
style: new TextStyle(color: Colors.white),
autofocus: true,
autocorrect: false,
decoration: new InputDecoration(
labelText: 'Login',
),
onChanged: (text) { _userLoginEmail = text; },
),
new TextField(
autofocus: false,
autocorrect: false,
obscureText: true,
decoration: new InputDecoration(
labelText: 'Password'
),
onChanged: (text) { _userLoginPassword = text; },
)
],
),
);
}
Run Code Online (Sandbox Code Playgroud)
解决方案 如果硬件键盘已连接,则会抑制软键盘.cmd + shift + k断开硬件键盘或cmd + k切换软件键盘.
showDialog(context, builder)当用户导航到某个页面时,我试图使用来显示问候消息。
我通过调用该页面上有状态小部件showDialog的initState方法来尝试此操作。虽然它确实有效,但我似乎无权访问实际上下文。
是否有扑了的方式来访问context的initState()方法是什么?
如果没有,是否有另一种方法可以更好地实现这种行为?
@override
void initState() {
super.initState();
new Future.delayed(Duration.zero, () {
showDialog(context: context,
builder: (BuildContext context) {
return new Container(child: new Text('foo'));
});
});
}
Run Code Online (Sandbox Code Playgroud) 我的测试数据位于assets/test/我不想包含在生产部署中。
运行时如何配置@angular/cli忽略/排除该文件夹ng build --prod?按照其他地方的建议
向 中添加一个exclude部分tsconfig.json不会导致任何可观察到的更改(即运行dist/assets/test后的文件ng build --prod)。
"compilerOptions": { ... },
"exclude" : [ "src/assets/test" ]
Run Code Online (Sandbox Code Playgroud)
是否有另一种方法可以从ng build进程中正确排除某些文件或文件夹?
有没有办法将堆栈子项自动调整为最大的兄弟?也就是说,如果我有Stack一个ListTile和Container在上面,我该如何确保Container覆盖整个ListTile?
例:
new Stack(children: <Widget>[
new ListTile(
leading: new AssetImage('foo.jpg'),
title: new Text('Bar'),
subtitle: new Text('yipeee'),
isThreeLine: true,
),
new Container(color: Colors.grey, child: new Text('foo'))
],
)
Run Code Online (Sandbox Code Playgroud)
我试图使它一起工作Row,Column和Expanded而正在运行与无边界约束的问题.
有没有办法将Container(或任何其他小部件,如a GestureDetector)的大小调整为堆栈中最大的兄弟?
我一直试图将一个漂亮的D3图表示例(https://jsfiddle.net/thudfactor/HdwTH/)转换为带有新D3 v4的Angular2组件.
但是,我使用以下代码获取"无法读取null属性文本"异常:
var textLabels = labelGroups.append("text").attr({
x: function (d, i) {
var centroid = pied_arc.centroid(d);
var midAngle = Math.atan2(centroid[1], centroid[0]);
var x = Math.cos(midAngle) * cDim.labelRadius;
var sign = (x > 0) ? 1 : -1
var labelX = x + (5 * sign)
return labelX;
},
y: function (d, i) {
var centroid = pied_arc.centroid(d);
var midAngle = Math.atan2(centroid[1], centroid[0]);
var y = Math.sin(midAngle) * cDim.labelRadius;
return y;
},
'text-anchor': function (d, i) {
var centroid …Run Code Online (Sandbox Code Playgroud) 我刚刚更新到最新的angular-cli(beta 14),它现在使用webpack而不是systemjs.
我曾经能够config/environment{prod|dev}.ts通过简单地导入常量来导入常量import { BASE_URL } from '../environment'.这不再起作用了.
环境现在定义angular-cli.json并指向environments/environment{.prod}.ts但我如何在我的组件中访问它们?
当Text元素的数据发生变化时,Flutter 有没有办法为过渡设置动画?
我有一个new Text(_value)元素,其中_value根据滑块位置进行更改。有什么方法可以为过渡设置动画,使其不像刚改变时那样“突然” _value?
我知道有小部件可以为两个不同小部件之间的过渡设置动画,但我只是更改data同一Text个小部件的属性。
我正在构建一个简单的画廊+幻灯片应用程序。
在画廊组件中,我拥有所有网址并将它们显示在GalleryItem组件中。
<gallery-item v-for="i in images" :item="i" :key="i.uid"/>
Run Code Online (Sandbox Code Playgroud)
GalleryItem然后使用
<img :src="item.url"/>
Run Code Online (Sandbox Code Playgroud)
显示图像。
如果用户单击任何一个,GalleryItem它将在灯箱/幻灯片组件中突出显示。
<lightbox :item="highlightedItem"/>
Run Code Online (Sandbox Code Playgroud)
再次使用
<img :src="item.url"/>
Run Code Online (Sandbox Code Playgroud)
我天真地期望浏览器缓存该请求,而不是重新加载完全相同的 URL,但这正是发生的情况。
有没有什么优雅的方法可以避免这种情况并在加载一次时缓存图像?
flutter ×5
angular ×3
angular-cli ×2
javascript ×2
d3.js ×1
dart ×1
ios ×1
vue.js ×1
vuejs2 ×1
webpack ×1