Skip to content
This repository was archived by the owner on Oct 19, 2018. It is now read-only.
This repository was archived by the owner on Oct 19, 2018. It is now read-only.

Some problem when follow this tuto. #7

Description

@zw963

Following just the summarize discuss in gitter:

Following is toto error:

  • get '/(*other)', to: 'hyperloop#app', which introduce in Chapter 7, should mention in Chapter 1, other, rails route not worked, I do this myself when follow this tuto, but others maybe not.

  • after rails g hyperloop:install, and then copy application_record.rb into app/hyperloop/models, that not work, uninitialized constant ApplicationRecord, the solution is: add config.import 'models/application_record' into config/initializers/hyperloop.rb, and rm tmp/cache, then worked.
    this step is done in this project, but when follow tuto, no where told us.

Follow is some advice for hyperloop

Following usage i think is error-prone.
EditItem(todo: params.todo).on(:save, :cancel) { mutate.editing false }
In most case, :save, :cancel should be browser internal event,
If we use a event like this but name conflict with this, what happen?
and, use param to define a event is very strange for me.

I think a better idea is: (two selection)

  • Not use on method, not conflict with browser event, you just hope yield
    one behavior only, use a name other than on is better, or, just simple:
# replace EditItem(todo: params.todo).on(:save, :cancel) { mutate.editing false }
# with

EditItem(
        todo:      params.todo,
        on_save:   proc { mutate.editing false },
        on_cancel: proc { mutate.editing false }
      )

# and invoke it like this:
params.on_save.call
  • Not use param to declare a event. e.g.
def event(name)
  # detect all browser internal support event name, if conflict, raise a error.
  param name, type: Proc
end
event :on_save

I think first solution is better, because params.on_save is just like usual param,
it just use logic instead of a variable.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions