我有一个角度4应用程序,我有一个javascript组件,我在一个javascript文件中创建:timeline.js.javascript组件运行良好,但我想用角度4来使用它.所以,我把我的js文件放在文件夹中assets/js/timeline.js.
在文件中index.html,我使用<script src="assets/js/timeline.js"></script>和调用我的js文件app.component.ts,我有:
var timeline = new Timeline("timelineVisualization")
Run Code Online (Sandbox Code Playgroud)
所以,通常,时间轴是在div中创建的id="timelineVisualization".
但它不起作用,我有一个错误new Timeline:找不到名称时间轴.
所以,你知道如何从中调用Timeline构造函数timeline.js吗?
我的目标是将一些数据从角度控制器发送到另一个.
这是必须发送数据的控制器:
myApp.controller('MapCtrl', ['$scope', '$http', function ($scope, $http) {
$scope.loadData = function () {
$http.get('/map/GetListDB').success(function (data, status, headers, config) {
//Logic here is working fine, it creates a table named "ExcelCols" which is a table of strings
$scope.$broadcast("SET_EXCEL_TITLES", $scope.ExcelCols);
})
}
}]);
Run Code Online (Sandbox Code Playgroud)
这是第二个控制器
myApp.controller('ExcelViewCtrl', ['$scope', '$http', function($scope, $http) {
$scope.$on("SET_EXCEL_TITLES", function (event, excelCols) {
//this event is never fired
$scope.ExcelCols = excelCols;
});
}]);
Run Code Online (Sandbox Code Playgroud)
我的观点是这样设计的:
<body ng-app="myApp">
<div ng-controller="MapCtrl">
//everything OK here
</div>
<div ng-controller="ExcelViewCtrl">
<table>
<thead>
<tr>
<th ng-repeat="col …Run Code Online (Sandbox Code Playgroud) 实际上,以下方法总是返回一个正整数:
var fixture = new Fixture();
var someInt = fixture.Create<int>();
Run Code Online (Sandbox Code Playgroud)
是否有可能有一天,功能发展并开始返回负整数?或者是否有官方原因它实际上返回一个总是正整数
如果不是,是否有某些文档隐藏在某个地方告诉它?
为了继续使用自动混合,我想知道是否可以预见到一些变化.
我知道这个问题已被多次询问,但我找不到任何答案
我有一个负责文件上传的指令.
这是我的指令的代码:
var directive = {
restrict: 'AE',
scope: {
settings: '='
},
controller: 'fileUploaderCtrl',
replace: true,
template: '<div class="fileTransferContainer uploadContainer" ng-file-drop="onFileSelect($files)" ng-file-drag-over-class="dropBox">\
<fieldset>\
<legend>Uploads in progress</legend>\
<div ng-repeat="file in selectedFiles" class="fileTransfer">\
<span class="up_fileSize"> {{file.size / 1024 | number:2}}KB</span>\
<span>{{file.sizeUploaded()}}</span>\
<div class="progressContainer">\
<div class="up_actions">\
<span>\
<button>\
<a ng-click="remove($index)" class="small_icon white_delete"></a>\
</button>\
</span>\
</div>\
</div>\
</div>\
</fieldset>\
</div>'
}
[...]
Run Code Online (Sandbox Code Playgroud)
在我的控制器中,我有以下代码:
$scope.remove = function (index) {
debugger;
$scope.selectedFiles.splice(index, 1);
$scope.sendUpdatedModel();
}
Run Code Online (Sandbox Code Playgroud)
我尝试过的:
至于我的ng-click是在ng-repeat中,我想知道它是否与范围继承无关.我试过这个,结果相同(在chrome中工作但在firefox中没有)
ng-click="$parent.remove($index)"
Run Code Online (Sandbox Code Playgroud)
我也用这种方式修改了控制器功能:
function remove(index) {
$scope.selectedFiles.splice(index, 1); …Run Code Online (Sandbox Code Playgroud) 在我的 angular4 应用程序中,我有一个基于数组的带有 *ngFor 指令的组件:
<div *ngFor="let person of persons">
{{person.name}}
{{person.car}}
</div>
Run Code Online (Sandbox Code Playgroud)
在组件的另一部分中,我可以删除汽车,因此在deleteCar()方法的订阅中,我将persons数组更新为:
deleteCar(car) {
this.carService.deleteCar(car).subscribe(() => {
this.persons.filter(obj => obj.car == car.name)
.forEach(i => i.car = null);
}
}
Run Code Online (Sandbox Code Playgroud)
问题是当我修改人数组中现有的人对象时,不会触发 *ngFor 循环。如何解决这个问题?
我想从jquery使用toggle()(或hide()),但它不起作用.
我知道我使用的语法也不错.它适用于 jsFiddle,但我无法使用剃须刀视图.
这是我想要使用的代码:
<script type="text/javascript">
$(".hidden").toggle();
</script>
@Using Html.BeginForm(IsPost)
@Html.ValidationSummary(True)
@<fieldset>
<legend>contact</legend>
<table>
<tr>
<td><h3>@Html.Raw("Données personnelles : ")</h3></td>
</tr>
<tr>
<td>@Html.Raw("Nom : ")</td>
<td>@Html.EditorFor(Function(model) model.nom)
@Html.ValidationMessageFor(Function(model) model.nom)</td>
<td>@Html.Raw("Prénom : ")</td>
<td>@Html.EditorFor(Function(model) model.prenom)
@Html.ValidationMessageFor(Function(model) model.prenom)</td>
</tr>
<tr>
<td class="hidden">@Html.Raw("Date de naissance : ")</td>
<td>@Html.EditorFor(Function(model) model.dateNaissance)
@Html.ValidationMessageFor(Function(model) model.dateNaissance)</td>
</tr>
</table>
<p>
<input type="submit" value="Create" />
</p>
</fieldset>
End Using
Run Code Online (Sandbox Code Playgroud)
生成的html代码如下:
<tbody><tr>
<td><h3>Données personnelles : </h3></td>
</tr>
<tr>
<td>Nom : </td>
<td><input class="text-box single-line" id="nom" name="nom" value="" type="text">
<span class="field-validation-valid" data-valmsg-for="nom" …Run Code Online (Sandbox Code Playgroud) 我收到以下错误.它将附加我试图把它给出错误. 找不到文件'C:\ Program Files\Common Files\Microsoft Shared\DevServer\10.0\1.jpg'.
<div class="nav-collapse collapse">
<p class="navbar-text pull-right">
Logged in as
<asp:Label ID="lblUsername" runat="server"></asp:Label>
<asp:LinkButton ID="lnkLogout" runat="server">Logout</asp:LinkButton>
</p>
</div>
</div>
</div>
</div>
<asp:Label ID="lblMessage" runat="server" Text=""></asp:Label>
<div class="well">
<div class="control-group">
<asp:Label ID="Label3" runat="server" Text="To" CssClass="control-label"></asp:Label>
<div class="controls">
<asp:TextBox ID="txtTo" runat="server" CssClass="span12"></asp:TextBox>
</div>
</div>
<div class="control-group">
<asp:Label ID="Label1" runat="server" Text="CC" CssClass="control-label"></asp:Label>
<div class="controls">
<asp:TextBox ID="txtCC" runat="server" CssClass="span12"></asp:TextBox>
</div>
</div>
<div class="control-group">
<asp:Label ID="Label4" runat="server" Text="BCC" CssClass="control-label"></asp:Label>
<div class="controls">
<asp:TextBox ID="txtBCC" runat="server" CssClass="span12"></asp:TextBox>
</div>
</div>
<div class="control-group">
<asp:Label …Run Code Online (Sandbox Code Playgroud) javascript ×3
angular ×2
angularjs ×2
asp.net ×2
c# ×2
.net ×1
autofixture ×1
css ×1
email ×1
firefox ×1
jquery ×1
razor ×1
typescript ×1