我正在尝试将新的列表选项动态添加到列表框中。 getItem(“ newCompany”)从本地存储获取阵列数据。这很好。但是我无法将newCompany.name推送到$ scope.companies数组中。我正在尝试动态添加新的列表选项“华为和华硕”。
var newCompany = [{
name: "Huawei", // -->COMPANY NAME
email: "Drath@yahoo.com",
phone: "123-123-1234",
owner: "Drath",
street: "Gin Blvd",
city: "Austin",
country: "USA",
duns:"123112321",
type: "buyer"
},
{
name: "Asus", // -->COMPANY NAME
email: "Vadar@yahoo.com",
phone: "999-123-8888",
owner: "Vadar",
street: "Vince Blvd",
city: "Dallas",
country: "USA",
duns: "123100000",
type: "supplier"
}];
window.localStorage.setItem("newCompany", JSON.stringify(newCompany));
var myApp = angular.module("myApp", []);
myApp.controller("myController", function ($scope) {
$scope.companies = ["Apple", "Oneplus", "Samsung"];
var newCompany = JSON.parse(localStorage.getItem("newCompany"));
$scope.newComp = {};
$scope.newComp.push(newCompany.name);
$scope.companies.push($scope.newComp);
});
<select class="form-control" name="addCompany" placeholder="Select Company" ng-options="company for company in companies">
</select>
答案 0 :(得分:0)
数据类型匹配吗?
$scope.companies
包含字符串,因此请尝试手动添加公司名称的字符串。
此外,ng-options="company for company in companies"
-我不确定两次使用相同的变量名是否可以使用。 ng-options通常用于将公司对象保存在companies
中,以便select的ng-model将包含所选公司:
<select ng-model="selectedCompany" ng-options="item.label for item in companies"></select>