【问题标题】:How can I call a function once on page load with an angular "ng" tag?如何在页面加载时使用角度“ng”标签调用函数?
【发布时间】:2020-02-07 07:05:53
【问题描述】:

我将 node js 用于后端,将 angular 用于前端。我在 app.js 中有一个作用域函数,我想在加载 html 页面时执行该函数。如果我在按钮后面添加这个逻辑,我可以获得我想要的功能,但是 ng-init 不成功。不成功,我的意思是它只会在 10% 的时间里做我想做的事。如何在页面加载时执行此功能并确保它持续存在?

这行得通

<button ng-click='setCurFiles("/Users/nick/Desktop/");'>test</button>

这可行,但不可靠

<div ng-init='setCurFiles("/Users/nick/Desktop");'></div>

【问题讨论】:

    标签: javascript node.js angularjs


    【解决方案1】:

    ng-init 指令可能会被滥用以在模板中添加不必要的逻辑量。 ngInit 的正确用法只有少数。1

    将初始化代码放入控制器中:

    app.controller("ctrl", function() {
        this.$ngInit = function() {
            setCurFiles("/Users/nick/Desktop/");
        };
        function setCurFiles(url) {
            //...
        }
    })
    

    【讨论】:

    • 好的。这是有道理的,但网址会根据不同的观点不断变化。我不想在 app.js 中设置静态目录。我想要一个可以接受来自许多不同 html 文件的参数的模块化函数
    猜你喜欢
    • 1970-01-01
    • 2017-11-25
    • 1970-01-01
    • 1970-01-01
    • 2017-04-04
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多