river-js | app development framework based on Facade/Mediator pattern | Frontend Framework library

 by   scottburch JavaScript Version: Current License: No License

kandi X-RAY | river-js Summary

kandi X-RAY | river-js Summary

river-js is a JavaScript library typically used in User Interface, Frontend Framework, React, Framework applications. river-js has no bugs, it has no vulnerabilities and it has low support. You can download it from GitHub.

One of the best things that a programmer can do in modern software development is code for change. It is absolutely essential in agile development. River is a framework to aid in developing systems that are very easy to change. I have used it to develop 2 prototypes and 3 applications for production. River has helped me to make changes more quickly and with fewer bugs. It also helped guide me into writing more reusable code so that I could share modules between projects.
Support
    Quality
      Security
        License
          Reuse

            kandi-support Support

              river-js has a low active ecosystem.
              It has 31 star(s) with 2 fork(s). There are 1 watchers for this library.
              OutlinedDot
              It had no major release in the last 6 months.
              river-js has no issues reported. There are no pull requests.
              It has a neutral sentiment in the developer community.
              The latest version of river-js is current.

            kandi-Quality Quality

              river-js has 0 bugs and 0 code smells.

            kandi-Security Security

              river-js has no vulnerabilities reported, and its dependent libraries have no vulnerabilities reported.
              river-js code analysis shows 0 unresolved vulnerabilities.
              There are 0 security hotspots that need review.

            kandi-License License

              river-js does not have a standard license declared.
              Check the repository for any license declaration and review the terms closely.
              OutlinedDot
              Without a license, all rights are reserved, and you cannot use the library in your applications.

            kandi-Reuse Reuse

              river-js releases are not available. You will need to build from source code and install.
              Installation instructions are not available. Examples and code snippets are available.
              river-js saves you 49 person hours of effort in developing the same functionality from scratch.
              It has 129 lines of code, 1 functions and 29 files.
              It has low code complexity. Code complexity directly impacts maintainability of the code.

            Top functions reviewed by kandi - BETA

            kandi's functional review helps you automatically verify the functionalities of the libraries and avoid rework.
            Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of river-js
            Get all kandi verified functions for this library.

            river-js Key Features

            No Key Features are available at this moment for river-js.

            river-js Examples and Code Snippets

            No Code Snippets are available at this moment for river-js.

            Community Discussions

            QUESTION

            Filtering Child Content in Angular 2+
            Asked 2020-May-15 at 16:44

            I have two Angular components (accordion > expansion panels) that I need to write without a framework. I am using ContentChild to support all of the expansion panels contained within the accordion component. What I want to do is parse the components to check their state and switch update a value on a property from within the parent container.

            Right now I have an event emitter in each expansion-panel which emits if each instance is open or closed.

            I need to track each ChildContent state$ and after each has been checked set a default if there is one, and track any changes if an inner child instance is toggled, it should emit the event to the parent accordion so it can determine which index to track as expanded.

            I wish to loop through each instance of ChildContent and check if any have been opened, if not open the first instance by changing its state. In the wrapper, I subscribe to each panel and check in a loop if they have are open, if none are open I wish to expand the first child.

            Whenever a child panel expands, I wish to contract the remaining child accordions aside from the one selected.

            ...

            ANSWER

            Answered 2020-May-15 at 16:44

            To do the one thing you asked for in your question, in your accordion, initializing all the panels closed, can be done by iterating over values of the already existing expansionPanels instance attribute:

            Source https://stackoverflow.com/questions/61808889

            QUESTION

            Error 'EMFILE: too many open files, open' VSTS in Release
            Asked 2018-Jan-15 at 06:04

            I am trying to deploy the Angular 5 sample Heros App to Azure using Azure's Continous Delivery, it is failing on the release with the following error:

            ...

            ANSWER

            Answered 2018-Jan-15 at 06:04

            I assume you configured Continuous Delivery with Node.js web application framework and None task runner in Azure, and the build tasks are: 1. Npm install 2. Archive files 3. Copy Files 4. Publish Build Artifacts.

            With these task, it won’t build the app and you upload all the source code files to app service, which don’t work for your scenario.

            To deal with this issue, you can add npm task (Step 2) to build your app and just publish output files to Artifact (Step 3: Change folder path) and upload to app service:

            1. Npm install task
            2. Npm task (Command: custom; Working folder with package.json: $(System.DefaultWorkingDirectory); Command and arguments: run build
            3. Archive Files (Root folder to archive: $(System.DefaultWorkingDirectory)/dist)
            4. Copy Files
            5. Publish Build Artifacts

            Source https://stackoverflow.com/questions/48250377

            QUESTION

            Why toBe () does not work in the test - protractor e2e
            Asked 2017-Sep-10 at 14:22

            I'm running my test, but I get the following message. Can anyone help me how to solve this? And how can I write the text eg the password is incorrect? Alert and console.log does not work for me.

            my code: app.e2e-spec.ts

            ...

            ANSWER

            Answered 2017-Sep-10 at 14:09

            You're doing it wrongly. It should be something like:

            Source https://stackoverflow.com/questions/46141603

            QUESTION

            Protractor + Appium hide android keyboard in chrome
            Asked 2017-Aug-15 at 15:52
            • MacOS Sierra 10.12.4
            • Node - v6.9.5
            • Appium - 1.6.0
            • Protractor - 5.1.2

            I am completely new to using appium and just got the basic setup working with the android emulator running the google chrome browser. The problem that I'm running into is that the soft keyboard I believe is in the way so a simple action like logging in doesn't work off the bat b/c when it types in my credentials the keyboard is in the way so it doesn't properly click the sign in button. The workaround that I found was clicking the text field after sending keys to get rid of the soft keyboard. I was hoping that there was an easy way to just disable the keyboard for automated testing. The other option that I hope I don't have to do would be overloading the sendKeys function to check if it's on mobile and click the textfield after sending keys. Any help or suggestions on how to solve this issue is appreciated.

            Possible Solution

            I have found this ExtendedWebDriver info from the protractor api reference page but I'm having difficulty finding any examples of successfully implementing it to use the function hideSoftKeyboard

            ...

            ANSWER

            Answered 2017-Aug-15 at 15:52

            Alright so I couldn't get it to work using protractors implementation of ExtendedWebDriver. But they said you can also use wd-bridge

            Source https://stackoverflow.com/questions/45677678

            QUESTION

            Angular2 Error self.parentView.context.. is undefined
            Asked 2017-Jun-15 at 09:57

            I'm trying to go on my angular 2 webapp but I get this error on each page :

            I haven't changed anything in the app, and it works on computers of people of my team.

            Is it caused by these warnings when npm install ?

            npm WARN deprecated angular2-google-maps@0.17.0: Please use the new package name
            @agm/core - Details here: htt://... npm WARN prefer global node-gyp@3.6.2 should be installed with -g

            node-sass@4.5.3 install C:...\node_modules\node-sass node scripts/install.js

            Downloading binary from https://github.com/sass/node-sass/releases/download/v4.5
            .3/win32-x64-48_binding.node Download complete Binary saved to C:...\node_modules\node-sass\vendor\win32-x64-48\bindi ng.node Caching binary to C:\Users\toto\AppData\Roaming\npm-cache\node-sass\4.5.3\win3
            2-x64-48_binding.node

            tslerp@1.0.5 postinstall C:...\node_modules\tslerp typings install

            typings WARN enoent Path "C:...\node_modules\tslerp\typings.json" is missing

            `-- (No dependencies)

            node-sass@4.5.3 postinstall C:\Users\aviale\Documents\dev\workspace\PlaceDesFa
            milles\PlaceDesFamilles\PlaceDesFamillesFront\node_modules\node-sass node scripts/build.js

            Binary found at C:\Users\aviale\Documents\dev\workspace\PlaceDesFamilles\PlaceDe
            sFamilles\PlaceDesFamillesFront\node_modules\node-sass\vendor\win32-x64-48\bindi ng.node Testing binary Binary is fine

            ng2-google-recaptcha@1.1.0 postinstall C:...\node_modules\ng2-google -recaptcha typings install

            typings WARN enoent Path "C:...\node_modules\ng2-google-recaptcha\typings.json" is missing

            `-- (No dependencies)

            place-des-familles-front@0.0.0 C:... +-- @angular/cli@1.0.0-beta.31 | +-- @ngtools/json-schema@1.0.3 | +-- @ngtools/webpack@1.2.9 | | +-- enhanced-resolve@3.1.0 | | +-- loader-utils@0.2.17 | | | +-- big.js@3.1.3 | | | +-- emojis-list@2.1.0 | | | -- json5@0.5.1 | |-- magic-string@0.19.1 | | -- vlq@0.2.2 | +-- async@2.4.1 | +-- autoprefixer@6.7.7 | | +-- browserslist@1.7.7 | | |-- electron-to-chromium@1.3.14 | | +-- caniuse-db@1.0.30000686 | | +-- normalize-range@0.1.2 | | +-- num2fraction@1.2.2 | | +-- postcss@5.2.17 | | | +-- js-base64@2.1.9 | | | -- supports-color@3.2.3 | |-- postcss-value-parser@3.3.0 | +-- chalk@1.1.3 | | +-- ansi-styles@2.2.1 | | +-- escape-string-regexp@1.0.5 | | +-- has-ansi@2.0.0 | | | -- ansi-regex@2.1.1 | | +-- strip-ansi@3.0.1 | |-- supports-color@2.0.0 | +-- common-tags@1.4.0 | | -- babel-runtime@6.23.0 | |-- regenerator-runtime@0.10.5 | +-- css-loader@0.26.4 | | +-- loader-utils@1.1.0 | | +-- lodash.camelcase@4.3.0 | | +-- object-assign@4.1.1 | | +-- postcss-modules-extract-imports@1.1.0 | | | -- postcss@6.0.2 | | |-- supports-color@3.2.3 | | +-- postcss-modules-local-by-default@1.2.0 | | | -- postcss@6.0.2 | | | -- supports-color@3.2.3 | | +-- postcss-modules-scope@1.1.0 | | | -- postcss@6.0.2 | | |-- supports-color@3.2.3 | | +-- postcss-modules-values@1.3.0 | | | +-- icss-replace-symbols@1.1.0 | | | -- postcss@6.0.2 | | |-- supports-color@3.2.3 | | -- source-list-map@0.1.8 | +-- cssnano@3.10.0 | | +-- decamelize@1.2.0 | | +-- defined@1.0.0 | | +-- has@1.0.1 | | |-- function-bind@1.1.0 | | +-- postcss-calc@5.3.1 | | | +-- postcss-message-helpers@2.0.0 | | | -- reduce-css-calc@1.3.0 | | | +-- balanced-match@0.4.2 | | | +-- math-expression-evaluator@1.2.17 | | |-- reduce-function-call@1.0.2 | | | -- balanced-match@0.4.2 | | +-- postcss-colormin@2.2.2 | | |-- colormin@1.1.2 | | | +-- color@0.11.4 | | | | +-- color-convert@1.9.0 | | | | | -- color-name@1.1.2 | | | |-- color-string@0.3.0 | | | -- css-color-names@0.0.4 | | +-- postcss-convert-values@2.6.1 | | +-- postcss-discard-comments@2.0.4 | | +-- postcss-discard-duplicates@2.1.0 | | +-- postcss-discard-empty@2.1.0 | | +-- postcss-discard-overridden@0.1.1 | | +-- postcss-discard-unused@2.2.3 | | |-- uniqs@2.0.0 | | +-- postcss-filter-plugins@2.0.2 | | | -- uniqid@4.1.1 | | |-- macaddress@0.2.8 | | +-- postcss-merge-idents@2.1.7 | | +-- postcss-merge-longhand@2.0.2 | | +-- postcss-merge-rules@2.1.2 | | | +-- caniuse-api@1.6.1 | | | | +-- lodash.memoize@4.1.2 | | | | -- lodash.uniq@4.5.0 | | | +-- postcss-selector-parser@2.2.3 | | | | +-- flatten@1.0.2 | | | | +-- indexes-of@1.0.1 | | | |-- uniq@1.0.1 | | | -- vendors@1.0.1 | | +-- postcss-minify-font-values@1.0.5 | | +-- postcss-minify-gradients@1.0.5 | | +-- postcss-minify-params@1.2.2 | | |-- alphanum-sort@1.0.2 | | +-- postcss-minify-selectors@2.1.1 | | +-- postcss-normalize-charset@1.1.1 | | +-- postcss-normalize-url@3.0.8 | | | +-- is-absolute-url@2.1.0 | | | -- normalize-url@1.9.1 | | | +-- prepend-http@1.0.4 | | |-- query-string@4.3.4 | | | -- strict-uri-encode@1.1.0 | | +-- postcss-ordered-values@2.2.3 | | +-- postcss-reduce-idents@2.4.0 | | +-- postcss-reduce-initial@1.0.1 | | +-- postcss-reduce-transforms@1.0.4 | | +-- postcss-svgo@2.1.6 | | | +-- is-svg@2.1.0 | | | |-- html-comment-regex@1.1.1 | | | -- svgo@0.7.2 | | | +-- coa@1.0.3 | | | |-- q@1.5.0 | | | +-- csso@2.3.2 | | | | -- clap@1.2.0 | | |-- whet.extend@0.9.9 | | +-- postcss-unique-selectors@2.0.2 | | -- postcss-zindex@2.2.0 | +-- debug@2.6.8 | |-- ms@2.0.0 | +-- denodeify@1.2.1 | +-- diff@3.2.0 | +-- ember-cli-normalize-entity-name@1.0.0 | +-- ember-cli-string-utils@1.1.0 | +-- extract-text-webpack-plugin@2.1.2 | | +-- loader-utils@1.1.0 | | +-- schema-utils@0.3.0 | | | -- ajv@5.1.5 | |-- webpack-sources@1.0.1 | | -- source-list-map@2.0.0 | +-- file-loader@0.10.1 | |-- loader-utils@1.1.0 | +-- findup@0.1.5 | | +-- colors@0.6.2 | | -- commander@2.1.0 | +-- fs-extra@2.1.2 | |-- jsonfile@2.4.0 | +-- get-caller-file@1.0.2 | +-- glob@7.1.2 | | +-- fs.realpath@1.0.0 | | +-- inflight@1.0.6 | | | -- wrappy@1.0.2 | | +-- inherits@2.0.3 | | +-- once@1.4.0 | |-- path-is-absolute@1.0.1 | +-- html-webpack-plugin@2.28.0 | | +-- html-minifier@3.5.2 | | | +-- camel-case@3.0.0 | | | | +-- no-case@2.3.1 | | | | | -- lower-case@1.1.4 | | | |-- upper-case@1.1.3 | | | +-- clean-css@4.1.4 | | | +-- commander@2.9.0 | | | | -- graceful-readlink@1.0.1 | | | +-- he@1.1.1 | | | +-- ncname@1.0.0 | | | |-- xml-char-classes@1.0.0 | | | +-- param-case@2.1.1 | | | +-- relateurl@0.2.7 | | | -- uglify-js@3.0.16 | | |-- commander@2.9.0 | | +-- pretty-error@2.1.0 | | | +-- renderkid@2.0.1 | | | | +-- css-select@1.2.0 | | | | | +-- boolbase@1.0.0 | | | | | +-- css-what@2.1.0 | | | | | +-- domutils@1.5.1 | | | | | | -- dom-serializer@0.1.0 | | | | | | +-- domelementtype@1.1.3 | | | | | |-- entities@1.1.1 | | | | | -- nth-check@1.0.1 | | | | +-- dom-converter@0.1.4 | | | | |-- utila@0.3.3 | | | | +-- htmlparser2@3.3.0 | | | | | +-- domelementtype@1.3.0 | | | | | +-- domhandler@2.1.0 | | | | | +-- domutils@1.1.6 | | | | | -- readable-stream@1.0.34 | | | | | +-- isarray@0.0.1 | | | | |-- string_decoder@0.10.31 | | | | -- utila@0.3.3 | | |-- utila@0.4.0 | | -- toposort@1.0.3 | +-- inflection@1.12.0 | +-- inquirer@3.1.0 | | +-- ansi-escapes@2.0.0 | | +-- cli-cursor@2.1.0 | | |-- restore- ... UNMET PEER DEPENDENCY @angular/platform-browser@4.2.2 | +-- @types/fullcalendar@2.7.43 | -- UNMET PEER DEPENDENCY zone.js@^0.8.4 +-- codelyzer@2.0.1 | +-- app-root-path@2.0.1 | +-- css-selector-tokenizer@0.7.0 | | +-- cssesc@0.1.0 | | +-- fastparse@1.1.1 | |-- regexpu-core@1.0.0 | | +-- regenerate@1.3.2 | | +-- regjsgen@0.2.0 | | -- regjsparser@0.1.5 | |-- jsesc@0.5.0 | +-- cssauron@1.4.0 | +-- semver-dsl@1.0.1 | | -- semver@5.3.0 | +-- source-map@0.5.6 |-- sprintf-js@1.0.3 +-- core-js@2.4.1 +-- fullcalendar@3.4.0 +-- jasmine-core@2.5.2 +-- jasmine-spec-reporter@2.5.0 | -- colors@1.1.2 +-- jquery@3.2.1 +-- karma@1.2.0 | +-- bluebird@3.5.0 | +-- body-parser@1.17.2 | | +-- bytes@2.4.0 | | +-- content-type@1.0.2 | | +-- debug@2.6.7 | | +-- depd@1.1.0 | | +-- http-errors@1.6.1 | | +-- iconv-lite@0.4.15 | | +-- on-finished@2.3.0 | | |-- ee-first@1.1.1 | | +-- qs@6.4.0 | | +-- raw-body@2.2.0 | | | +-- bytes@2.4.0 | | | +-- iconv-lite@0.4.15 | | | -- unpipe@1.0.0 | |-- type-is@1.6.15 | | -- media-typer@0.3.0 | +-- chokidar@1.7.0 | | +-- anymatch@1.3.0 | | +-- async-each@1.0.1 | | +-- glob-parent@2.0.0 | | +-- is-binary-path@1.0.1 | | |-- binary-extensions@1.8.0 | | +-- is-glob@2.0.1 | | | -- is-extglob@1.0.0 | |-- readdirp@2.1.0 | | -- set-immediate-shim@1.0.1 | +-- combine-lists@1.0.1 | +-- connect@3.6.2 | | +-- debug@2.6.7 | | +-- finalhandler@1.0.3 | | |-- debug@2.6.7 | | +-- parseurl@1.3.1 | | -- utils-merge@1.0.0 | +-- di@0.0.1 | +-- dom-serialize@2.2.1 | | +-- custom-event@1.0.1 | | +-- ent@2.2.0 | | +-- extend@3.0.1 | |-- void-elements@2.0.1 | +-- expand-braces@0.1.2 | | +-- array-slice@0.2.3 | | +-- array-unique@0.2.1 | | -- braces@0.1.5 | |-- expand-range@0.1.1 | | +-- is-number@0.1.1 | | -- repeat-string@0.2.2 | +-- graceful-fs@4.1.11 | +-- http-proxy@1.16.2 | | +-- eventemitter3@1.2.0 | |-- requires-port@1.0.0 | +-- lodash@3.10.1 | +-- log4js@0.6.38 | | +-- readable-stream@1.0.34 | | | +-- core-util-is@1.0.2 | | | +-- isarray@0.0.1 | | | -- string_decoder@0.10.31 | |-- semver@4.3.6 | +-- mime@1.3.6 | +-- optimist@0.6.1 | | +-- minimist@0.0.10 | | -- wordwrap@0.0.3 | +-- qjobs@1.1.5 | +-- socket.io@1.4.7 | | +-- debug@2.2.0 | | |-- ms@0.7.1 | | +-- engine.io@1.6.10 | | | +-- accepts@1.1.4 | | | | +-- mime-types@2.0.14 | | | | | -- mime-db@1.12.0 | | | |-- negotiator@0.4.9 | | | +-- base64id@0.1.0 | | | +-- debug@2.2.0 | | | | -- ms@0.7.1 | | | +-- engine.io-parser@1.2.4 | | | | +-- after@0.8.1 | | | | +-- arraybuffer.slice@0.0.6 | | | | +-- base64-arraybuffer@0.1.2 | | | | +-- blob@0.0.4 | | | | +-- has-binary@0.1.6 | | | | |-- isarray@0.0.1 | | | | -- utf8@2.1.0 | | |-- ws@1.0.1 | | | +-- options@0.0.6 | | | -- ultron@1.0.2 | | +-- has-binary@0.1.7 | | | -- isarray@0.0.1 | | +-- socket.io-adapter@0.4.0 | | | +-- debug@2.2.0 | | | | -- ms@0.7.1 | | |-- socket.io-parser@2.2.2 | | | +-- debug@0.7.4 | | | +-- isarray@0.0.1 | | | -- json3@3.2.6 | | +-- socket.io-client@1.4.6 | | | +-- backo2@1.0.2 | | | +-- component-bind@1.0.0 | | | +-- component-emitter@1.2.0 | | | +-- debug@2.2.0 | | | |-- ms@0.7.1 | | | +-- engine.io-client@1.6.9 | | | | +-- component-inherit@0.0.3 | | | | +-- debug@2.2.0 | | | | | -- ms@0.7.1 | | | | +-- has-cors@1.1.0 | | | | +-- parsejson@0.0.1 | | | | +-- parseqs@0.0.2 | | | | +-- xmlhttprequest-ssl@1.5.1 | | | |-- yeast@0.1.2 | | | +-- indexof@0.0.1 | | | +-- object-component@0.0.3 | | | +-- parseuri@0.0.4 | | | | -- better-assert@1.0.2 | | | |-- callsite@1.0.0 | | | -- to-array@0.1.4 | |-- socket.io-parser@2.2.6 | | +-- benchmark@1.0.0 | | +-- component-emitter@1.1.2 | | +-- debug@2.2.0 | | | -- ms@0.7.1 | |-- isarray@0.0.1 | +-- tmp@0.0.28 | -- useragent@2.1.13 | +-- lru-cache@2.2.4 |-- tmp@0.0.31 webdriver@2.53.42 | +-- blocking-proxy@0.0.5 | +-- jasmine@2.6.0 | | +-- exit@0.1.2 | | -- jasmine-core@2.6.3 | +-- jasminewd2@2.1.0 | +-- q@1.4.1 | +-- saucelabs@1.3.0 | |-- https-proxy-agent@1.0.0 | | -- agent-base@2.1.1 | +-- selenium-webdriver@3.0.1 | |-- tmp@0.0.30 | +-- source-map-support@0.4.15 | +-- webdriver-js-extender@1.0.0 | | -- selenium-webdriver@2.53.3 | | +-- adm-zip@0.4.4 | | +-- tmp@0.0.24 | |-- xml2js@0.4.4 | | -- sax@0.6.1 |-- webdriver-manager@12.0.6 | +-- adm-zip@0.4.7 | +-- del@2.2.2 | | +-- globby@5.0.0 | | | -- array-union@1.0.2 | | +-- is-path-cwd@1.0.0 | | +-- is-path-in-cwd@1.0.0 | | |-- is-path-inside@1.0.0 | | | -- path-is-inside@1.0.2 | |-- pify@2.3.0 | +-- ini@1.3.4 | +-- semver@5.3.0 | -- xml2js@0.4.17 | +-- sax@1.2.2 |-- xmlbuilder@4.2.1 +-- rxjs@5.4.1 | -- symbol-observable@1.0.4 +-- ts-helpers@1.1.2 +-- ts-node@1.2.1 | +-- arrify@1.0.1 | +-- diff@2.2.3 | +-- make-error@1.3.0 | +-- mkdirp@0.5.1 | |-- minimist@0.0.8 | +-- pinkie@2.0.4 | +-- tsconfig@5.0.3 | | +-- any-promise@1.3.0 | | +-- parse-json@2.2.0 | | | -- error-ex@1.3.1 | | |-- is-arrayish@0.2.1 | | +-- strip-bom@2.0.0 | | | -- is-utf8@0.2.1 | | -- strip-json-comments@2.0.1 | -- xtend@4.0.1 +-- tslint@4.5.1 | +-- babel-code-frame@6.22.0 | | +-- esutils@2.0.2 | |-- js-tokens@3.0.1 | +-- findup-sync@0.3.0 | | -- glob@5.0.15 | +-- tsutils@1.9.1 |-- update-notifier@2.2.0 | +-- boxen@1.1.0 | | +-- ansi-align@2.0.0 | | +-- camelcase@4.1.0 | | +-- cli-boxes@1.0.0 | | +-- string-width@2.0.0 | | | -- is-fullwidth-code-point@2.0.0 | | +-- term-size@0.1.1 | | |-- execa@0.4.0 | | | +-- cross-spawn-async@2.2.5 | | | +-- is-stream@1.1.0 | | | +-- npm-run-path@1.0.0 | | | +-- path-key@1.0.0 | | | -- strip-eof@1.0.0 | |-- widest-line@1.0.0 | +-- configstore@3.1.0 | | +-- dot-prop@4.1.1 | | | -- is-obj@1.0.1 | | +-- make-dir@1.0.0 | | +-- unique-string@1.0.0 | | |-- crypto-random-string@1.0.0 | | -- write-file-atomic@2.1.0 | | +-- imurmurhash@0.1.4 | |-- slide@1.1.6 | +-- import-lazy@2.1.0 | +-- is-npm@1.0.0 | +-- latest-version@3.1.0 | | -- package-json@4.0.1 | | +-- got@6.7.1 | | | +-- create-error-class@3.0.2 | | | |-- capture-stack-trace@1.0.0 | | | +-- duplexer3@0.1.4 | | | +-- get-stream@3.0.0 | | | +-- is-redirect@1.0.0 | | | +-- is-retry-allowed@1.1.0 | | | +-- lowercase-keys@1.0.0 | | | +-- timed-out@4.0.1 | | | +-- unzip-response@2.0.1 | | | -- url-parse-lax@1.0.0 | | +-- registry-auth-token@3.3.1 | | +-- registry-url@3.1.0 | |-- semver@5.3.0 | +-- semver-diff@2.1.0 | | -- semver@5.0.3 |-- xdg-basedir@3.0.0 +-- typescript@2.0.10 +-- typings@2.1.0 | +-- archy@1.0.0 | +-- cli-truncate@0.2.1 | | +-- slice-ansi@0.0.4 | | `-- string-width@1.0.2 | | +--

            exit-hook@1.1.1 | | -- onetime@1.1.0 | +-- promise-finally@3.0.0 | +-- typings-core@2.3.3 | | +-- array-uniq@1.0.3 | | +-- detect-indent@5.0.0 | | +-- invariant@2.2.2 | | |-- loose-envify@1.3.1 | | +-- is-absolute@0.2.6 | | | +-- is-relative@0.2.1 | | | | -- is-unc-path@0.1.2 | | | |-- unc-path-regex@0.1.2 | | | -- is-windows@0.2.0 | | +-- jspm-config@0.3.4 | | +-- lockfile@1.0.3 | | +-- make-error-cause@1.2.2 | | +-- object.pick@1.2.0 | | |-- isobject@2.1.0 | | +-- popsicle@9.1.0 | | | +-- concat-stream@1.6.0 | | | | -- typedarray@0.0.6 | | |-- form-data@2.2.0 | | +-- popsicle-proxy-agent@3.0.0 | | | -- http-proxy-agent@1.0.0 | | +-- popsicle-retry@3.2.1 | | +-- popsicle-rewrite@1.0.0 | | +-- popsicle-status@2.0.1 | | +-- rc@1.2.1 | | |-- deep-extend@0.4.2 | | +-- sort-keys@1.1.2 | | | -- is-plain-obj@1.1.0 | | +-- string-template@1.0.0 | | +-- strip-bom@3.0.0 | | +-- thenify@3.3.0 | | +-- throat@3.2.0 | | +-- touch@1.0.0 | | |-- nopt@1.0.10 | | -- zip-object@0.1.0 | +-- update-notifier@1.0.3 | | +-- boxen@0.6.0 | | | +-- ansi-align@1.1.0 | | | +-- camelcase@2.1.1 | | | +-- filled-array@1.1.0 | | |-- repeating@2.0.1 | | | -- is-finite@1.0.2 | | +-- configstore@2.1.0 | | | +-- dot-prop@3.0.0 | | |-- write-file-atomic@1.3.4 | | +-- latest-version@2.0.0 | | | -- package-json@2.4.0 | | | +-- got@5.7.1 | | | | +-- duplexer2@0.1.4 | | | | +-- node-status-codes@1.0.0 | | | | +-- read-all-stream@3.1.0 | | | | +-- timed-out@3.1.3 | | | |-- unzip-response@1.0.2 | | | -- semver@5.3.0 | | +-- lazy-req@1.1.0 | |-- xdg-basedir@2.0.0 | -- wordwrap@1.0.0-- zone.js@0.7.8

            npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@^1.0.0 (node_modules\ch
            okidar\node_modules\fsevents): npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@
            1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"}
            ) npm WARN @angular/forms@4.2.2 requires a peer of @angular/platform-browser@4.2.2
            but none was installed. npm WARN @angular/core@4.2.2 requires a peer of zone.js@^0.8.4 but none was inst
            alled.

            Here is my app.component.ts:

            ...

            ANSWER

            Answered 2017-Jun-15 at 09:42

            As your error indicates, utilisateur.role is not defined by the time you execute your *ngIf hence utilisateur.role.lowerCase() is throwing an error. You can do a workaround like this:

            Source https://stackoverflow.com/questions/44562919

            Community Discussions, Code Snippets contain sources that include Stack Exchange Network

            Vulnerabilities

            No vulnerabilities reported

            Install river-js

            You can download it from GitHub.

            Support

            For any new features, suggestions and bugs create an issue on GitHub. If you have any questions check and ask questions on community page Stack Overflow .
            Find more information at:

            Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items

            Find more libraries
            CLONE
          • HTTPS

            https://github.com/scottburch/river-js.git

          • CLI

            gh repo clone scottburch/river-js

          • sshUrl

            git@github.com:scottburch/river-js.git

          • Stay Updated

            Subscribe to our newsletter for trending solutions and developer bootcamps

            Agree to Sign up and Terms & Conditions

            Share this Page

            share link