我正在尝试将WinJS评级控制封装到Angular2组件中。当我调试时,我可以看到WinJS.UI.processAll();正在被调用和执行。但我没看到评级控制。
我怎么才能让它起作用?
Dashboard.cshtml
@{
ViewBag.Title = "Dashboard";
}
<my-app></my-app>
<script src="/jspm_packages/system.js"></script>
<script src="/config.js"></script>
<script>
System.import('reflect-metadata')
.then(function () {
System.import('angular2')
.then(function () {
System.import("/js/app");
});
});
</script>app.js
import { Component, View, bootstrap } from 'angular2';
import 'reflect-metadata';
import 'winjs';
@Component({
selector: 'my-app'
})
@View({
template: '<div data-win-control=\'WinJS.UI.Rating\' data-win-options=\'{averageRating: 3.4}\'></div>'
})
class MyAppComponent {
constructor() {
}
onInit() {
WinJS.UI.processAll();
}
}
bootstrap(MyAppComponent);发布于 2015-09-25 21:40:18
应“奇妙世界”的要求
首先,根据将Windows用于JavaScript添加到页面,您必须将css文件添加到html中。
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/winjs/4.3.0/css/ui-light.min.css">第二,必须从alpha37+导入并实现所使用的生命周期挂钩,在本例中为onInit (参见删除LifecycleEvent)。
import { Component, View, bootstrap, OnInit} from 'angular2/angular2';
import 'reflect-metadata';
import 'winjs';
@Component({
selector: 'my-app'
})
@View({
template: '<div data-win-control=\'WinJS.UI.Rating\' data-win-options=\'{averageRating: 3.4}\'></div>'
})
class MyAppComponent implements OnInit {
onInit() {
WinJS.UI.processAll();
}
}仅此而已。这是普朗克。
(很高兴它有所帮助;)
https://stackoverflow.com/questions/32780961
复制相似问题