angular.js - angular 自定义服务向方法传递参数问题
问题描述
我自定义了一个服务 传入数字返回字符串的状态但是我把输入框的值传入写的好像不对 求带
<p ng-app='app7' ng-controller='myctrl7'><input type='text' ng-model='txtnum'><p> {{myservice}}</p> </p>var app7 = angular.module(’app7’, []) app7.service(’tostring’, function () { this.myfuc = function (x) {if (x == 1) { return '未开课'} else if (x == 2) { return '已开课'} else if (x == 3) { return '已结课'} else { return '课程异常'} }})app7.controller(’myctrl7’, function ($scope, tostring) { $scope.myservice = tostring.myfuc($scope.txtnum)})
这个有问题 为什么

问题解答
回答1:你的input的ngModal改变的时候,myservice不会重跑,因为myservice在页面是一个差值,这是一个方法,而非数据,所有你得watch并触发它。
$scope.$watch(’txtnum’, function(val) { $scope.myservice = tostring.myfuc($scope.txtnum)});
相关文章:
1. linux - python 安装 Anaconda 环境变量问题请教2. mysql插入文本如果是个sql语句就报错了3. javascript - 使用vue-cli有个报错ERR_INCOMPLETE_CHUNKED_ENCODING4. python中merge后文件莫名变得非常大5. mysql - SQL添加记录的数据来源于同一个表6. html5 - 请问一下写H5的时候 你们都是兼容那些手机7. python3.x - python多线程如何修改数据?8. mysql连表排序9. css3 - 没明白盒子的height随width的变化这段css是怎样实现的?10. mysql sql where id in(25,12,87) 结果集如何用按照 25 12 87排序?

网公网安备