【问题标题】:How to use my own library in another js file (vanilla js) [duplicate]如何在另一个 js 文件(vanilla js)中使用我自己的库 [重复]
【发布时间】:2019-10-15 19:48:27
【问题描述】:

我已经创建了我的库,并希望在我的前端应用程序中使用这些方法。我该怎么做呢?

这是一个带有 vanilla js 的简单前端应用程序,我没有使用任何框架,也没有使用 nodejs...

这是我的库 antecipacao.js:

var _ = (function (val, parc, taxaMdr) {

    'use strict';
    var valor=val;
    var parcela=parc;
    var mdr=taxaMdr;
    valorParc = (valor - (((valor / parcela) * mdr)) * parcela) / parcela;
    valorTotalAntecipado = valorParc * parcela;
    valorParcela = 0

    // Create the methods object
    var methods = {};

    methods.parcelaCalculo = function (valor, parcelas, mdr, numero){
        return (valorParc - ((numero * mdr) * valorParc));
    }

    methods.umDia = function (valorTotalAntecipado, parcelas, mdr) {
        for (var i = 0; i < parcelas; i++) {
            if(i == 0){
                valorParcela += parcelaCalculo(valorParc,parcelas, (mdr / 30 * 29), i+1);
            }else if(i != 0){
                valorParcela += parcelaCalculo(valorParc,parcelas,mdr, i+1);
            }
        }
        return console.log(valorParcela);
    };

    methods.trintaDias = function (valorTotalAntecipado, parcelas, mdr) {
        for (var i = 0; i < parcelas; i++) {
            if(i > 0){
                valorParcela += parcelaCalculo(valorParc,parcelas,mdr, i);
            }else{
                valorParcela += valorParc;
            }
        }
        return console.log(valorParcela);
    };

    methods.quinzeDias = function (valorTotalAntecipado, parcelas, mdr) {
        for (var i = 0; i < parcelas; i++) {
            if(i == 0){
                valorParcela += parcelaCalculo(valorParc,parcelas,mdr, 0.5);
            }else if(i != 0){
                valorParcela += parcelaCalculo(valorParc,parcelas,mdr, i+0.5);
            }
        }
        return console.log(valorParcela);
    };

    methods.noventaDias = function (valorTotalAntecipado, parcelas, mdr) {
        for (var i = 0; i < parcelas; i++) {
            if(i > 3){
                valorParcela += parcelaCalculo(valorParc,parcelas,mdr, i);
            }else{
                valorParcela += valorParc;
            }
        }
        return console.log(valorParcela);
    };

    // Expose the public methods
    return methods;

})();

_.umDia();
_.quinzeDias();
_.trintaDias();
_.quarentaDias();

这是我的 js.js:



function calcular(){
  var valor = document.getElementById("valor").value;
  var parcelas = document.getElementById("parcelas").value;
  var mdr = document.getElementById("mdr").value;

  if(valor != "" && parcelas != "" && mdr != ""){
    console.log("test")
  }
}

那么如何通过js.js在我的html页面中使用库方法呢?

【问题讨论】:

  • 如果您将两者都加载到页面上,只需js.js after antecipacao.js -- 您应该能够在js.js 中使用来自antecipacao.js 的方法 --除非我误解了这个问题?
  • 上面的评论是最简单的方法。如果你想尝试一些前沿的东西,你可以使用 ES6 模块。有关详细信息,请参阅 import 关键字。
  • 是的,我是初学者。但是现在又抛出了另一个错误。 'valorParc' 未定义。你知道怎么解决吗?
  • 您没有定义valorParc - 只需将您引用它的第一个地方定义为var valorParc
  • 通常,如果您省略对变量的“var”赋值,则该变量将附加到全局范围。但是由于您使用的是“使用严格”;在这里, valorParc 没有被定义,因为你没有用 var 明确地将它声明为一个变量。

标签: javascript html


【解决方案1】:

我认为最好的方法是将你的库包含在你的 html 文件中,比如 jQuery

<html>
<body>
  <script src='antecipacao.js'></script>
  <script src='myJS.js'></script>
</body>
</html>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-02-12
    • 2022-09-24
    • 2018-09-26
    • 2020-04-08
    • 2016-07-03
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多