标签: watch

最佳实践 - 什么是观看目录的最佳方式

我需要设置一个脚本来监视某个类型的文件的文件夹.我做了这个代码,但我想知道是否有更好的方法?

import os


def listAppleseedFiles(directory_path):
    directory_entities =  os.listdir(directory_path)
    files = []
    appleseed_files = []
    for entity in directory_entities:
        file_path = os.path.join(directory_path, entity)
        if os.path.isfile(file_path):
            if os.path.splitext(file_path)[1] == '.appleseed':
                appleseed_files.append(file_path)

    return appleseed_files

while True:
    for file in listAppleseedFiles('/dir_name'):

        doSomething()
Run Code Online (Sandbox Code Playgroud)

python directory watch

3
推荐指数
1
解决办法
264
查看次数

Visual Studio Debugger 未在鼠标悬停时显示变量详细信息,因为它“脱离上下文”

我在 Visual Studio 2013 中有一个 F# 程序,它在一开始就创建了一个对象。我想调试代码并在许多不同的时间点查看此对象的值。我以前可以通过在调试模式下将鼠标悬停在变量上来做到这一点,但由于某种原因,我不再能够做到这一点。当我添加手表时,它给了我错误:

由于评估时出现问题,此项目的值已过时。将光标悬停在刷新按钮上以获取详细信息。旧值:名称“MyData”在当前上下文中不存在。

然后将鼠标悬停在刷新按钮上:

此表达式的值可能不正确。无法对其进行评估,因为:“当前上下文中不存在名称“MyData””单击此按钮现在尝试重新评估。

更奇怪的是,我知道该变量有效,因为它作为参数传递给其他外部函数,而且我可以看到这些辅助函数中的所有值,但不能在全局范围内看到!有谁知道发生了什么?

debugging scope watch visual-studio visual-studio-2013

3
推荐指数
1
解决办法
1万
查看次数

范围.$ watch不在angular指令中工作

我已经制作了一个自定义指令并使用了ng-model,但是当模型更新时,该指令即使我正在观看该事件.这是代码:

angular.module('Directives').directive("customDirective", ['$window', function ($window) {

return {
    restrict: "E",
    require: 'ngModel',
    scope: {
        ngModel: '=',
    },
    link: function (scope, elem, attrs, ngModel) {

        // IF the model changes, re-render
        scope.$watch('ngModel', function (newVal, oldVal) {
            render();
        });

        // We want to re-render in case of resize
        angular.element($window).bind('resize', function () {
            //this does work
            render();
        })

        var render = function () {
            //doing some work here
        };
    }
}}]);
Run Code Online (Sandbox Code Playgroud)

和观点:

<div ng-repeat="product in pageCtrl.productList track by product.id">
<h3>{{ product.name }}</h3>
<custom-directive …
Run Code Online (Sandbox Code Playgroud)

javascript watch angularjs angularjs-ng-repeat angular-directive

3
推荐指数
1
解决办法
4766
查看次数

Angular.js中的"scope.watch不是函数"错误

我已经编写了一个自定义指令来格式化值,下面给出了自定义指令

var directiveapps = angular.module('myApp.currencyValues', []);
directiveapps.directive('currencyValue', function () {
return{
scope: {
    data: '=items'
},
template: '<div>$ {{value|number}}</div>',
link: function(scope){
  scope.value = Math.round(scope.data* 100) / 100;
}
};
}); 
Run Code Online (Sandbox Code Playgroud)

该指令将值格式化为货币,并且它将舍入小数点.我从这些视图中调用了这个指令.

<div class="overallsummary_meter_txt left">
Total Price<br>
<span currency-value items="totalPrice" class="orange_txt"></span>
</div>
Run Code Online (Sandbox Code Playgroud)

这很好用.但是当我通过ajax将值传递给视图时,我发现了一些问题.指令在视图加载的那一刻正在执行,如果值需要时间加载,那么变量将不会有任何值.因此,我从指令中得到一个空值.为了解决这个问题,我稍微修改了我的指令,如下所示.

var directiveApps = angular.module('gogocarApp.currencyValues', []);
directiveApps.directive('currencyValue', function () {
return {
transclude: true,
scope: {
  items: '=items'
},
template: '<div>$ {{items|number}}<span ng-transclude></span></div>',
link: function(scope){
  scope.watch('items', function () {
   scope.items = scope.items ? Math.round(scope.items* 100) / 100 …
Run Code Online (Sandbox Code Playgroud)

javascript watch angularjs angularjs-directive angularjs-scope

3
推荐指数
1
解决办法
3090
查看次数

MongoDB更改流仅显示选定字段

我正在尝试了解 MongoDB 中的更改流。

我试图仅显示更新文档的某些字段。

所以我做了:

option={ 'full_document':'updateLookup' }
collection.watch([{"$match"  : { "operationType" : "update" }}] , **option)
Run Code Online (Sandbox Code Playgroud)

这是工作。

现在我只想显示一些字段。

我试过:

collection.watch([{"$match"  : { "operationType" : "update" }},{"$project":{"_id":1}}] , **option)
Run Code Online (Sandbox Code Playgroud)

或者

collection.watch([{"$match"  : { "operationType" : "update" }}],option).aggregate({"$project":{"_id":1}})
Run Code Online (Sandbox Code Playgroud)

但它们都不起作用。

如何仅显示选定的字段?

watch mongodb changestream

3
推荐指数
1
解决办法
3871
查看次数

如何配置npm-watch?

我不知道如何配置 npm-watch 我不明白如何从文档(自述文件)中使用它。

在根项目中,我有包含一些 .js 文件的脚本文件夹。脚本文件夹发生任何更改后,我想调用 npm build,如何使用 npm-watch 执行此操作?如何设置 npm-watch?

watch npm

3
推荐指数
1
解决办法
4080
查看次数

从 vue watcher 访问组件实例

我正在从事一个项目,类似于账单经理,所以我希望每次数量或单位值发生变化时都重新计算小计,我已经尝试并搜索使用观察者或计算属性来完成此操作,但我没有找到正确的方法,因为我需要在另一个更改时访问元素的整个范围,就像这样。

模型结构:

  • 细节
  • 数量
  • 单位价值
  • 小计(应该是计算的或更新的)

所以我认为我应该能够做这样的事情:

    Vue.component('item', {
    template: '#item',
    props: {
      item: Object,
    },
    computed:{
        total: function(){ 
            return this.quantity*this.unit_value;
         }
    },
    watch:{
      'item.quantity':()=>{
        this.subtotal = this.quantity*this.unit_value;
      }
    }
  });
Run Code Online (Sandbox Code Playgroud)

我从列表中读取了几个组件

我使用观察者合并了该方法并在相同的代码中计算以使其更短。

问题是我还没有找到从内部访问孔元素的方法,任何人都可以解释正确的方法吗?谢谢

watch vue.js computed-properties vuejs2

3
推荐指数
1
解决办法
2718
查看次数

Vuejs 观察者顺序

我有一个带有两个观察者的 Vue 实例:

\n\n
watch: {\n    zone:function(zone)\xc2\xa0{\n        console.log(\'Zone watcher\');\n        this.route = {};\n    },\n    route:function(route) {\n        console.log(\'Route watcher\');\n        if(Object.getOwnPropertyNames(route).length === 0) {\n            var _this = this;\n            axios.get(route.url).then(function(response) {\n                _this.tracks = response.data;\n            });\n        } else this.tracks = {};\n    }\n},\n
Run Code Online (Sandbox Code Playgroud)\n\n

当用户选择一个区域时,路线(和轨迹)将被重置。当用户选择路线时,加载轨迹;

\n\n

我有一个组件接收zonetracks作为道具,还有两个内部观察者,当任何道具发生变化时,它们会执行一些独立的操作。

\n\n

我还有一个可以更改这两个变量的方法:\n

\n\n
jump:function(path) {\n    var parts = path.split(\',\');\n    this.zone = this.ZONES[parts[0]];\n    this.route = this.zone.routes[parts[1]];\n},\n
Run Code Online (Sandbox Code Playgroud)\n\n

问题是watcher forroute首先被触发,然后watcher forzone更改route值再次触发其watcher,将tracks值重置为空对象。

\n\n

有没有办法定义必须触发观察者的顺序?

\n

javascript watch vue.js vuejs2

3
推荐指数
1
解决办法
3931
查看次数

错误 node_modules/jest-diff/build/diffLines.d.ts(8,13): 错误 TS1005: '=' 预期。在嵌套js中

当我使用npm run start:dev 命令在监视模式下启动并运行 nestjs 应用程序时,会显示此错误。

ERROR in node_modules/jest-diff/build/diffLines.d.ts(8,13): error TS1005: '=' expected.
node_modules/jest-diff/build/diffLines.d.ts(8,34): error TS1005: ';' expected.
node_modules/jest-diff/build/index.d.ts(10,13): error TS1005: '=' expected.
node_modules/jest-diff/build/index.d.ts(10,34): error TS1005: ';' expected.
node_modules/jest-diff/build/index.d.ts(11,1): error TS1128: Declaration or statement expected.
node_modules/jest-diff/build/index.d.ts(11,13): error TS1005: ';' expected.
node_modules/jest-diff/build/index.d.ts(11,52): error TS1005: ';' expected.
node_modules/jest-diff/build/printDiffs.d.ts(8,13): error TS1005: '=' expected.
node_modules/jest-diff/build/printDiffs.d.ts(8,57): error TS1005: ';' expected.
Run Code Online (Sandbox Code Playgroud)

watch node.js npm typescript nestjs

3
推荐指数
1
解决办法
5054
查看次数

错误:EMFILE:打开的文件太多,请注意,除非我使用 sudo

描述

最近我遇到了一个问题。我无法yarn startelement-web目录中运行,出现这些错误。本来以为跟element-web自己有关系,所以就创建了一个问题。一段时间后,我尝试wintersmith previewbibviz目录中运行并遇到相同的错误。这很奇怪,所以我尝试创建一个 Angular 项目并ng serve再次运行和错误。我前往该问题以关闭它,因为它不是element-web问题。我发现还有另一个问题是由同样的问题造成的。它已经被关闭的turt2live说法it looks like you've run out of memory on your system。基于此,我尝试关闭在后台运行的大多数程序,现在所有命令都可以正常工作。

我确信ng serve过去曾经工作过。

我的 PC 有 16 GB 的 RAM,当我使用 7/16 GB 时,命令已经失败。运行命令时我看不到任何内存峰值。运行命令sudo也完全消除了这个问题。这对我来说没有任何意义。

研究引导我,ulimits但它们似乎没有效果。我也安装watchman了没有效果。

有人可以告诉我我缺少什么吗?

先感谢您!

信息

我在 Debian 11 Bullseye 上。这是一些可能有用的命令的输出。

作为普通用户:

> uname -a
Linux Simon-s-PC 5.8.0-3-amd64 #1 …
Run Code Online (Sandbox Code Playgroud)

watch ulimit node.js

3
推荐指数
1
解决办法
1931
查看次数