2014-09-23 50 views
0

我被阻止,不能如下,看看有人能帮助我......(抱歉我的英文不好,我的解释)。如何保存ng-include的值并在以后使用

我有这个笔,我有一个输入来插入一个值或加载默认值。 NgStorage我用来存储内存中的值,如果应用程序重新加载,并始终加载输入(localStorage)中的用户类型。

当我有一个下拉列表,其中我选择了两个数字中的一个,这两个数字是我在以下div中创建的两个模板之一(或template1 template2)。

极右的,但现在我想以任何方式为下一个div(红色边框)保存结果,使用从驱动器开始声明的范围变量执行上面选择的简单算术运算。

请帮忙吗?

这里我的笔(我用的离子):http://codepen.io/maestromutenrroy/pen/ukwIC

<html ng-app="ionicApp"><head> 
    <meta charset="utf-8"> 
    <meta name="viewport" content="initial-scale=1, maximum-scale=1, user-scalable=no, width=device-width"> 

    <title>Ionic....</title> 

    <link href="//code.ionicframework.com/1.0.0-beta.12/css/ionic.css" rel="stylesheet"> 
    <script src="//code.ionicframework.com/1.0.0-beta.12/js/ionic.bundle.js"></script> 
    <script src="https://rawgithub.com/gsklee/ngStorage/master/ngStorage.js"></script> 
    </head> 
    <body ng-controller="MainCtrl"> 

    <ion-header-bar class="bar-positive"> 
     <h1 class="title">Hello!</h1> 
    </ion-header-bar> 

    <br /><br /><br /> 
    <!-- load 11, but I change the valor --> 
    Write a number: <input type="number" ng-model="$storage.c6" style="border: 1px solid #ddd; padding-left: 10px"> 
    <br> 
    <!-- select of two templates --> 
    Select one option: 
    <select ng-model="template" ng-options="t.name for t in templates"> 
     <option value="">(blank)</option> 
    </select> 
    <!-- print a template select --> 
    <div ng-include src="template.url" onload='myFunction()'></div> 

    <!-- template1.html --> 
    <script type="text/ng-template" id="template1.html"> 
     {{1000 - $storage.c6}} 
    </script> 

    <!-- template2.html --> 
    <script type="text/ng-template" id="template2.html"> 
     {{10 - $storage.c6}} 
    </script> 

    <br> 
    <hr /> 
    <div style="border: 2px solid red; padding: 20px"> 
     Now, I would like a same operation (result of template1 or template2 - $storage.c12): ..... 
    </div> 

    </body> 
</html> 

    angular.module('ionicApp', ['ionic','ngStorage']) 

    .controller('MainCtrl', function($scope, $localStorage) { 

    $scope.$storage = $localStorage.$default({ 
     c6: 1, 
     c12: 2 
    }); 

    $scope.templates = [{ 
     name: '5', 
     url: 'template1.html'} 
     , 
     { 
     name: '10', 
     url: 'template2.html'}]; 
    $scope.template = $scope.templates[0]; 

}) 

谢谢!

回答

1

可以保存在scope对象的结果,并更新每个模板里面:

<!-- template1.html --> 
<script type="text/ng-template" id="template1.html"> 
    {{results.x = 1000 - $storage.c6}} 
</script> 

<!-- template2.html --> 
<script type="text/ng-template" id="template2.html"> 
    {{results.x = 10 - $storage.c6}} 
</script> 

<div style="border: 2px solid red; padding: 20px"> 
    Now, I would like a same operation (result of template1 or template2 - $storage.c12): ..... {{results.x - $storage.c12}} 
</div> 

和控制器上:

$scope.results = {}; 

Demo

+0

谢谢你!耶士是工作!!! – 2014-09-23 14:52:00

相关问题